Skip to main content

Full text of "Compute! Magazine Issue 063"

See other formats


JJIZi^^l^- 


News  From  The  Summer  Consumer  Electronics  Show 


COMPUTE! 

The  Leading  Magazine  Of  Home,  Educational,  And  Recreational  Computing 


$2,95 
August 
1985 
Issue  63 
Vol.  7,  No,  8 


S3  75  Conado 

021 P3 

ISSN  019'3-357X 


Animator 
The  Easy  Way  To 
Create  Your  Own 
Colorful  Graphics 

"^     Atari 

Advanced 
Commodore  1541 
Disk  Command 
Add  Power 
To  Your  Programs 

Appie  lie  IVIousor 
Efficient  Editing 
With  Fast 
Cursor  Control 

Atari  Color  Mixing 
How  To  Create 
Dazzling  Color 
Displays 

IBM  Fiiecopy 
A  Better  Way 
To  Mat<e  Backups 


i71486"0Z193' 


0  8         d^VHlirJ     k^ 


>$^ 


•     J*     «  »        • 


If  you  own  an  Apple  Ik, 
you'd  have  to  add  three  more  Apple  Ik's, 

an  Extra  Keypad, 

30  Block  Graphic  Sets, 

Color  Sprites, 

two  more  voices, 

four  instruments, 

a  Cartridge  Port,  a  Joystick  Port, 

and  a  Commodore  64... 


to  match  the  versatility,  expandability 
and  higher  Intelligence  of  the 
new  Commodore  128 

(and  it  costs  less  too). 


The  new  Commodore  128'"  per- 
sona! computer  is  breakthrough 
technology  at  a  breakthrough 
price.  It  outshines  the  Apple®  lie 
in  performance  capability,  per- 
formance quality  and  price.  It  is 
expandable  to  512K  RAM.  The  lie 


doesn't  expand.  Commodore  128 
has  a  numeric  keypad  built  into  its 
keyboard  that  makes  crunching 
numbers  a  lot  easier  And  graphic 
and  sound  capabilities  that  far 
exceed  those  of  the  Apple  lie.  But 
the  most  important  news  is  that 


Commodore  128  jumps  you  into  a 
new  world  of  business,  productivity 
education  and  word  processing 
programs  while  still  running  over 
3,000  programs  designed  for  the 
Commodore  64.™  That's  what  we 
call  a  higher  intelligence. 


COMMODORE  128^  PERSONAL  COMPUTER 

•Apple Is oregistefedtrQClemarte of Appte Computer. inc  A  HIQlier  inTeillQenC© 


9  Ccxninodore  1985 


AMAZING  DMSy 

NOW!  FULL  SIZE,  FULL  FEATURE,  LETTER  QUALITY  AT  ONLY  $353 


If  you  have  been  searching  for  a  letter 
quality  printer  you  have  probably  found 
the  flood  of  claims  and  counterclaims  to 
be  a  real  roadblock  in  your  search.  Not 
long  ago  we  were  in  the  same  position. 
We  tried  to  determine  which  daisy  wheel 
printer  had  alt  the  features  our 
customers  wanted,  yet  would  not  set 
them  back  a  month's  salary.  Recently 
several  manufacturers  have  introduced 
machines  that  had  features  we  were 
seaching  for.  After  a  thorough  assess- 
ment, we  eliminated  one  model  after  the 
other  for  lack  of  one  feature  or  another 
until  we  only  had  one  left. 
THE  RESULTS  ARE  IN 

We  found  the  printer  which  has  all  the 
features  anyone  could  want.  The  winner 
is  the  Aprotek  Daisy  1120,  a  real  heavy- 
duty  workhorse  printing  at  20  characters 
per  second.  The  manufacturer  is  Olympic 
Co.  Ltd.,  a  highly  respected  Japanese  firm, 

FEATURES  GALORE 

This  printer  has  it  all.  To  start  with,  it 
has  a  front  panel  Pitch  Selector  button 
with  indicators  which  allows  10,  12,  15 
characters  per  inch  (CPI)  or 
Proportional  Spacing.  There  is  a  Select 
(Online)  button  (with  indicator)  and  a 
Line  Feed  button.  You  can  also  set  Top- 
of-Form  or  Form  Feed  with  the  touch  of 
the  TOF  button.  Other  front  pane!  in- 
dicators include  Power  and  Alarm, 

To  load  a  sheet  of  paper,  simply  place 
it  in  the  feed  slot  and  pull  the  paper  bail 
lever.  PRESTO!  The  paper  feeds  automati- 
cally to  a  1  inch  top  margin  and  the  car- 
riage aligns  to  the  selected  left  margin. 
In  this  manner,  each  page  can  have  iden- 
tical margins  automatically.  You  can  con- 
tinue to  compute  while  the 
Daisy  1120  is 


printing.  The  built  in  2K  buffer  frees  up 
your  computer  while  printing  a  page  or 
two  allowing  you  to  go  to  your  next  job. 
To  really  put  your  printer  to  work,  the 
Cut  Sheet  Feeder  option  is  great  for 
automatic  printing  of  those  long  jobs. 
Also  available  is  the  adjustable  Tractor 
Feed  option.  Compare  our  option  prices! 
Best  of  all  the  Daisy  1120  is  quiet:  only 
57  dB-A  (compare  with  an  average  of 
62-65  dB-A  for  others). 

COMPLETE  COMPATIBILITY 

The  Daisy  1120  uses  industry  standard 
Diablo®  compatible  printwheels.  Scores 
of  typeface  styles  are  available  at  most 
computer  or  stationary  stores.  You  can 
pop  in  a  10,  12,  15  pitch  or  proportional 
printwheel  and  use  paper  as  wide  as  14". 
At  15  CPI  you  can  print  165 
columns— great  for  spreadsheets. 

The  Daisy  1120  uses  the  Diablo 
Hytype  II®  standard  ribbon  cartridges, 
.i^gain  universally  available. 

Not  only  is  the  hardware  completely 
compatible,  the  control  codes  recognized 
by  the  Daisy  1120  are  Diablo  630® 
compatible  (industry  .standard).  You  can 
take  advantage  of  all  the  great  features 
of  word  processing  packages  like 
Wordstar®  ,  pfs:  Write®  ,  .Microsoft 
Word®  and  most  others  which  allow  you 
to  automatically  use  superscripts, 
subscripts,  automatic  underiining,  bold- 
face (shadow  printing)  and  doublestrike. 

The  printer  has  a  set  of  rear  switches 
which  allow  the  use  of  standard  ASCII  as 
well  as  foreign  character  printwheels. 
Page  length  can  be  set  to  8,  11,  12,  or 
15".  The  Daisy  1120  can  also  be  switch- 
ed to  add  automatic  line  feed  if  required. 


THE  BEST  PART 

When  shopping  for  a  daisy  wheel 
printer  with  ail  these  features  (if  you 
could  find  one),  you  could  expect  to  pay 
$600  or  $700  dollars.  The  options  would 
add  much  more.  Not  now!  We  have  done 
our  homework.  We  can  now  offer  this 
printer  for  only  $353.  Order  yours  today! 

NO  RISK  OFFER 

Try  the  Dai.sy  1120  for  2  weeks.  If  you 
are  not  satisfied  for  ANY  reason  we  will 
refund  the  full  price— promptly.  A  full 
I -year  parts  and  labor  warranty  is 
included. 

THE  BOTTOM  LINE 
Aprotek  Daisy  1120  (Order#1120)  $353 
w/standard  Centronics  parallel  interface 
and  2K  buffer. 
Options 

Auto  Cut  Sheet  Feeder  (#1110)  $188 
Tractor  Feed  (#1112)577 
A  cc6  s  sor  j  c  s 

8'  Cable  for  IBM  PC®  and  compatibles 
(#1103)  $26 

Interface  with  cable:  'TI-eDMA  (.#106)  $66 
•Apple  II  or  He  (#1104)  $76 
•All  Commodore  (except  Pet)  (#1105)  $44 
•All  Atari  (#1107)  $66 

shipping  IS  $11— UPScontinertaJ  US.^,  If  you  are  in 
a  hum-.  UPS  Blue  or  Aif  Parcel  Post  (second  day 
air)  \i  S25.  Canada,  .Ala.ska.  Mexico  and  Hawaii  arc 
S3(l  lairl.  Other  fnreiCn  h  S60  iairl.  California 
residents  add  6'S'o  tax.  IViccs  are  cash  prices— VISA 
and  M(C  add  .")%  to  total.  We  ship  promptly  on 
money  orders,  ca-^hiers  checks,  and  charge  cards. 
Allow  U^Iay  clearing  for  checks.  No  C.O.D.'s.  Pay- 
ment in  L!S  dollars  only. 

TO  ORDER  ONLY  CALL  TOLL  FREE 

(800)  962-5800  USA       ,„  „  p„^, 

(800)  962-3800  CALIF.  '  ' 

Or  send  payment  to  address  below: 
Technical  Information  &  Customer 
Service:  (805)  987-2454  (8-5  pstj 
Dealer  Inquiries  Invited 

'M9H5  APROTEK.  All  riStlH  KStn-ed. 
Tradfmarl«:  Diabki.  Hytypi-  II,  630.Xt;r«x 
Cor^i;  Wiirdstir-Mkropro  Corp.;  PfS- 
Sdftwart"  Publishing  Corp.:  Micrnsult 
Word.Microsoft  Corp.;  Apple.  II, 
lie-Apple  Computer.  Inc.: 
IBM  PC-IBM  Corp.; 
PET,  CUM. 


1I)7I-A  Avenida  Aca.so.  Camarillo.  CA  WMiUi 


COMPUTE 


AUGUST  1985 
VOLUME  7 
NUMBER  8 
ISSUE  63 


FEATURES 


14  Report  from  the  Summer  Consumer  Electronics  Show  Tom  R.  Half  hill 

16       Monster  Memory 

20       A  Tantalizing  Peek  at  the  Amiga 

42  Animator Steve  Johnson 


GUIDE  TO  ARTICLES 
AND  PROGRAMS 


AP/AT/64/1 28 
Tl/PC/PCjr 


REVIEWS 


38    Archon  II:  Adept Arthur  Leyenberger 

38    WordPerfect  for  IBM  Richard  Mansfield 

40    Adventures  in  Narnia  for  Apple  and  64    C.  Regena 


AT/64/1 28/AP 

PC 

AP/64 


COLUMNS  AND  DEPARTMENTS 

4   The  Editor's  Notes     Robert  Lock 

8   Readers'  Feedback   The  Editors  and  Readers  of  COMPUTEI 

24   The  Beginner's  Page    Tom  R.  Halfhiil 

26   Computers  and  Society: 

Compilers,  Interpreters,  and  Flow,  Part  2 David  D.  Thornburg 

26   On  the  Road  with  Fred  D'Ignazio: 

Buying  the  Right  Educational  Software Fred  D'Ignazio 

32  HOTWARE    

33  Telecomputing  Today — SIGs:  Behind  the  Scenes Arlon  R.  Levitan 

34  INSIGHT:  Atari— Atari  Input/Output   Bill  Wilkinson 

35  IBM  Personal  Computing;  New  Life  for  Aging  PCs    Donald  B.  Trivette 

36  Programming  the  Tl:  Trivia  Quiz  C.  Regena 


AT 
PC/PCjr 

Tt 


THE  JOURNAL 


62 

68 
71 

72 
74 
76 
78 
80 
82 
84 


37 

41 

86 
89 

96 
96 


Archive;  Two-Drive  Backup  for  Commodore  64   Philip  I,  Nelson 

Atari  Color  Mixing     Karl  E.  Wiegers 

Mousor: 
Escape  Mode  Cursor  for  the  Apple  lie    ...    J.  Blake  Lambert  and  Tim  Victor 

Commodore  64  Headliner Robert  F.  Lambiase 

Using  the  Commodore  USR  Function    Keith  R.  Bergerstock 

Sound  and  Music  on  the  Commodore  128,  Part  1    Philip  I.  Nelson 

Colorful  Text  for  IBM  Graphics   Peter  F.  Nicholson,  Jr, 

Advanced  1541  Disk  Commands   Dave  Straub 

IBM  Filecopy   John  Klein  and  Jeff  Klein 

Apple  Text  Windows    Daniel  L.  Joynt 


CAPUTEI  Modifications  or  Corrections  to 

Previous  Articles 

Ciassified 

COMPUTEi's  Guide  to  Typing  in  Programs 

MLX  Mactiine  Language  Entry  Progrom  for 

Commodore  64 

Advertisers  index 

Product  Mart 


NOTE:  See  page  86 
before  typing  In 
programs. 


64 
AT 

AP 
64 

V/64/+4/16/128 

128 

PC/PCjr 

V/64/+4/16/128 

PC/PCjr 

AP 


AP  Apple,  Mac  Macintosh, 
AT  Atari,  V  VIC-20,  64  Com- 
modore 64.  +4  Commodore 
Plus/4.  16  Commodore  16, 
126  Commodore  128,  P 
PET/CBM.  Tl  Texas  instru- 
ments. PC  IBM  PC.  PCjr  IBM 
PCjr,  CO  Radio  Stiack  Color 
Computer. 
"General  interest. 


TOLL  FREE  Subscriplion  Order  Line  800-334-0868  (In  NC  919-275-9809) 


COMPUTE!  Pubiications,lnc.® 

One  o(  ttie  ABC  Publishing  Companies:  ^^^ 

ABC  Publishing,  President,  Robert  G.  Burton 

1330  Avenue  of  the  Americas.  New  Vcuk.  New  Yoik  10019 

Address  all  Inquiries  to: 

PC.  Box  5406.  Greensboro.  NC  27403 


COMPUTEI  The  Journal  for  Progressive  Computing  (USPS:  537250)  is  published  monthly  by 
COMPUTE!  Publications.  Inc.,  P.O.  Box  5406.  Greensboro,  NC  27403  USA.  Phone:  (919)  275-9809. 
Editorial  Offices  are  located  at  324  West  VVendover  Avenue,  Greensboro,  NC  27408.  Domestic 
Subscriptions;  12  issues,  S24.  Send  subscription  orders  or  change  of  address  (P.O.  form  3579)  to 
COMPUTEI  Magazine,  P.O.  Box  10954,  Des  Moines,  lA  50340.  Second  class  postage  paid  at 
Greensboro,  NC  27403  and  additional  maiiing  offices.  Entire  contents  copyright  ©1985  by 
COMPUTE!  Publications,  Inc.  All  tights  reserved,  ISSN  0194-357X. 


Editors  Notes 


The  subdued  pallor  of  the  per- 
sonal computer  section  at  the 
Summer  Consumer  Electronics 
Show  was  somewhat  sobering. 
Dozens  of  industry  vendors  sim- 
ply chose  not  to  exhibit;  dozens 
more  have  disappeared  in  the 
months  since  the  last  show.  No- 
ticeable in  the  reduced  clutter  of 
exhibitors  was  the  increased  lev- 
el  of  professionalism  and  so- 
phistication of  presentation 
among  those  present.  Also  no- 
ticeable was  the  lack  of  industry- 
shaking  innovation  we've 
grown  accustomed  to  over  the 
last  few  years.  Among  the  bright 
spots  were  our  old  friends  at 
Atari,  the  Tramiels.  They  high- 
lighted that  which  is  best  among 
us  by  promising  new  innova- 
tions and  continued  leadership 
at  the  cutting  edge  of  truly  con- 
sumer-oriented electronics. 
Their  demonstration  of  an  Atari/ 
compact  disc  interface  which  al- 
lows an  entire  multi-volume  en- 
cyclopedia to  be  stored  and 
quickly  retrieved  from  less  than 
one-quarter  of  a  single  compact 
disc  is  truly  significant.  Their 
proposed  pricing  for  new  Atari 
ST  systems  promises  hope  for 
fall.  (See  the  Consumer  Elec- 
tronics Show  article  elsewhere 
in  this  issue  for  more 
information.) 

Commodorians  are  proper- 
ly pushing  the  128  system  and 
reluctantly  admitting  the  com- 
ing of  the  Amiga.  We  were 
shocked  to  discover  that  appar- 
ently some  at  Commodore  still 
enjoy  political  magazine  games. 


Several  of  our  competitors  had 
already  received  Amiga  systems 
while  Commodore  public  rela- 
tions personnel  were  concur- 
rently telling  us  that  all 
magazines  would  be  treated 
equally.  It  makes  one  wonder 
what  motive  Commodore  might 
have  for  withholding  access  to 
the  Amiga  from  the  largest 
Commodore-related  publisher 
in  the  industry.  Ah,  well.  COM- 
PUTE! always  perseveres,  and 
you  may  rely  on  us  to  bring  you 
continuing  and  timely  assess- 
ments of  the  new  Amiga. 
Among  our  articles  this  month 
on  the  Consumer  Electronics 
Show,  you'll  find  some  early 
information  on  the  Amiga.  It 
looks  like  a  pretty  impressive 
machine. 

On  this  increasingly  hope- 
ful note,  we'll  point  out  that  the 
traditionally  upbeat  Christmas 
season,  while  viewed  with  cau- 
tion, is  expected  to  be  a  good 
one  for  the  vendors  who  have 
remained  in  the  marketplace. 
It's  a  bit  of  the  smaller  pie  and 
fewer  slices  phenomena.  That 
same  principle  can  perhaps  be 
extended  to  the  magazine  pub- 
lishing industry.  We  have  a 
small  group  among  our  compet- 
itors whose  attacks  on  us  over 
the  years  have  ebbed  and 
flowed  with  the  success  of  the 


various  magazines  they  launch 
to  compete  with  ours.  As  prob- 
lems arise  for  whatever  flagship 
they're  currently  pushing,  we 
can  detect  a  significant  increase 
in  the  various  voices  they  raise 
in  criticism  of  us,  our  style,  our 
policies,  our  editors,  our  writing. 
We  have  always  chosen  io  re- 
main silent  in  the  face  of  these 
rumblings  and  time  has  always 
proven  to  be  our  steadfast  ally. 
We  suspect  such  will  remain  the 
case.  In  the  meantime,  we'll 
continue  our  efforts  to  always 
provide  you  with  the  most  bal- 
anced magazines  of  the  best 
quality  we  can  publish.  Thank 
you  for  your  continued  support. 


Editor  in  Chief 


4     COMPUTE!      August  1985 


ThE  Better  Letter  Box 


Introducing  EasyPIex!  The  new, 
easy-to-use  electronic  mail  system 
from  CompuServe. 


Finally!  Electronic  Mail  that's  so  easy  to 
use  you  can  start  composing  and  sending 
messages  the  first  time  you  get  online. 

Designed  for  various  experience  levels, 
EasyPIex  has  a  menu  mode  with  simple, 
easy-to-follow  directions  for  beginners, 
and  it  lets  experienced  users  save  time  by 
working  irt  the  prompt  or  command  modes. 
With  EasyPlex,  you  can  compose,  edit,  send, 
file,  and  take  advantage  of  sophisticated 


options  previously  available  only  with  more 
expensive  services. 

CompuServe's  EasyPIex  lets  friends  and 
relatives,  associations  and  club  members 
communicate  any  time  of  the  day  or  night. 
And  small  business  owners,  real  estate 
professionals,  insurance  agents,  lawyers, 
writers,  etc  can  communicate  quickly  and 
simply— either  interoffice  or  interstate. 
It's  Easy."  "Just  Plex it!" 

Best  of  all.  EasyPIex  is  available  to  all 
CompuServe  subscribers.  And,  along  with 
EasyPIex,  you  get  hundreds  of  valuable  and 
entertaining  computing  options.  Plus  the 
assurance  of  belonging  to  the  largest,  fastest 


growing  computer  information  service  in 
the  world  and  the  premier  supplier  of 
business  information  to  FORTUNE  500 
companies. 

Start  communicating!  To  buy  a 
CompuServe  Subscription  Kit,  see  your 
nearest  computer  dealer  To  receive  our 
informative  brochure  or  to  order  direct, 
call  or  write: 

CompuServe 

Information  Services,  RO.  Box  20212 

5000  Arlington  Centre  Blvd..  Columbus,  Ohio 43220 

800-848-8199 

In  Ohio,  call  614-457-0802 
An  H&R  Block  Coinpany 


Publisher 

Editor  In  Chief 

Director  of  Administration 


Gary  f?  InQersoll 
Robert  C  Lock 
Alice  S  Wolte 


Senior  Editor 

Monoglng  Editor 

Editor 

Asstslont  Editor 

Production  DErectof 

Production  Editor 

Editor.  COMPUTEI's  GAZEHE 

Technical  Editor 

As$[5lant  Technical  Editors 

Prograrri  Editor 

Features  Editor 

Assistant  Editor,  COMPUTEI's 

GAZEHE 
Feature  Writer 
Research  Asslslanl 
Progrommlng  Supervisor 
Editorial  Programmers 

Submissions  Revhewef 
Piogrammtng  Asslslanti 
Copy  Editors 
Executive  Asilitgnl 
Admlnistrolive  Asstslonls 

Assoclale  fditors 


Contrtbutlr>g  Editor 


Richard  Mansfield 

Kathleen  Mortmek 

Tom  R.  Hatfhill 

Philip  Nelson 

Tony  Rotierts 

Gall  Cov^per 

Lance  Elko 

Ottis  R.  Cowper 

John  KtQuse,  George  WlHer 

Charles  Brannon 

Selby  eotemon 

Toda  Helmorck 

Kothy  Vakql 

Sharon  Darling 

Potrick  Porrish 

Tim  Victor^  Kevin  Mykytyn, 

Kevin  Mortin 

Mark  Tuttle 

David  Florance.  Suson  Doss 

Joon  RouleoUj  Ann  Dovies 

Susan  Young 

Julio  Fleming,  Iris  Brooks,  Jan 

K  ret  low 

Jim  Sutterfielcf 

Toronto.  Canada 

Hofvey  Hermon 

Greensboro,  NC 

Fred  D'tgnozio 

Roonoke.  VA 

David  Thomburg 

Los  Altos.  CA 

Bill  Wilkinson 


COMPUTEI'S  Book  Division 
Editor 

Assistont  Editors 
Administrative  AssisSani 
Director,  Book  Sales  & 

Marketing 
Assist  on  t 


Stephen  Levy 

Gregg  Keijer.  J.  Bloke  Lambert 

Lauro  WacFaddon 

Steve  Vovotiis 
Cofol  Dickerson 


Production  Manager 

Art  *  Design  Director 

Assistant  Editor,  Art  &  Design 

Mechonlcai  Art  Supervisor 

Artists 

Typesetting 

liluslrolor 


Irma  Swain 

Janice  R.  Fory 

Lee  Noel 

De  Potter 

Debbie  Bray.  Dabney  Gllck 

Terry  Cosh,  Carole  Dunton 

Horry  Blair 


Dfrecfor  ol  Advertising  Sales    Ken  Woodard 
Production  Coordlnaloi  Patti  Stokes 

Administratlva  Assistant  KothFeen  Honlon 


Promotion  Asslslanl 


CaroSlne  Dork 


Customer  Service  Manager     Phiiippa  King 


Dealer  Soles  Supervisor 
Assistants 


individual  Ordet  Supervisor 
Assistants 


Warehouse  Manager 
Sfotr 


Gail  Jones 

Debl  Goforth,  Liz  Kajsensljemo^ 

Rtionda  Sovage 

Judy  Taylor 

Betty  Atkins.  Gayfe  Benbow, 

Mory  Hunt,  Jenno  Nosh,  Chris 

Potty 

Lonnie  Arden 

Harold  Ayers,  Steve  Bowman, 

Lorry  O'Connor.  David  Henstey 


Data  Processing  Manager 
Assistant 


Leon  Stokes 

Chris  Cain 


Vice  President,  Finance  & 

Planning 
Director,  Finance  &  Planning 
Accountont 
Financial  Analyst 
S(aft 


Paul  J.  Mogiiolo 
R.  Steven  Vetter 
Robert  L.  Bean 
Koren  K.  f^ogolskl 
Dole  Broncti,  Jill  Pope 


Credit  Manager 
Stofl 


&arry  L  Beck 

Sybil  Agee.  Anne  Ferguson.  Pat 
Fuller.  Doris  HoU.  Undo  Miller, 
Wory  Waddelt.  Jane  WIggs 


Purctioslng  Manager 


Greg  L.  Smith 


Robert  C.  Lock.  Chief  Executive  Officer 

Gary  R.  ingersoU  President 

Paul  J.  Megiioia,  Vice  Presiderii.  Fmonce  and  Planning 

Debi  Nosh,  Executive  Assistant 

Anita  Armfleld,  Assistant 


iflil 

PlagaiitK  PuMlHwrs  AvKKiaMon 


Atidh  Bnrcm 
o^r  ClrenlitioQi 


Coming  In  Future  Issues 

Hands-On  Reports: 
Atari  520ST 
Commodore  Amiga 
Atari  130XE  And  DOS  2.5 

Word  Search: 

Puzzle  Generator  For  Atari, 

Commodore  64,  1 28,  VIC, 

Plus/4,  16,  Apple, 

IBM  PC/PCjr,  TI-99/4A 

Chess  For  IBM  PC/PCjr 

Easy  Apple  Screen  Editing 

Commodore  64  Disk 
Commander 

The  Last  Warrior 

Action  Game  For  Commodore  64, 

Atari,  Apple,  IBM  PC/PCjr 


COMPUTEt  Publications.  Inc-  publlsnes: 


COMPUTE'S 


COMPUTE!  Books 
COMPUTErs 


Corpof  at*  offlca: 

324  West  Wendover  Avenue 
Suite  200 

Greensboro,  NC  27408  USA 
Mairing  oddrsu:  COMPUTEI 
Post  Office  Box  5406 
Gfsensboro.  NC  2?403  USA 
T«l«phOfw:  919-275-9H9 


Subscription  Orders 

COMPUTEI  circulation  Dept. 
P.O.  Box  914 
Farmlngdale,  NY  11737 

TOLL  FREE  Subscription  Order  Line 
800-334-0868 

In  NC  919-275-9609 


COMPUTEI  Subscription  Rates 
(12  issue  Yeai): 

us  (one  yr.)  $24 

(two  vrs.)  $45 
(three  yrs.)  $65 
Canada  and  Foreign 
Surface  Mail  $30 

Foreign  Air 
Delivery  $65 


Advertising  Sales 


1 .  Nsw  England 

Jonathan  M.  Just 
Regional  Manager 
212-315-1665 

2.  Mid  Atlantic 

John  Sovol 
Eastern  Advertising 
Manager 
212-315-1665 
KQthy  Hlcl<s 
Morsho  A.  Gittelman 
215-646-5700 
Brian  S.  Rogers 
212-674-0236 


4.  Mfdwest 

Gordon  Benson 
312-362-1821 

5,  Northwest/ 
Mountaln/Toxat 

Phoebe  Thompson 
408-354-5553 


3,  $outh«ast  &  Foraign    6.  Southwott 

Harr/  Blair  Ed  Wincheli 

919-275-9609  213-378-6361 


Dlrsctor  of  Advertising  Sales 

Ken  Woodard 

COMPUTEI  Home  Office  919-275-9809. 

Address  all  advertising  materials  to: 

Patti  W,  Stol<es 

Advertising  Production  Coordinator 

COMPUTEI  Magazine 

324  West  Wendover  Avenue, 

Greensboro,  NC  27408 


The  COMPUTEI  subscriber  list  fs  mads  QvQiiabie  to  ccrefully  screened  orQonizations  willi  a  product  or  service  which 
moy  be  of  interest  io  our  readers.  B  you  prefer  not  to  receive  such  mailings,  please  send  an  exact  copy  ot  your 
subscription  lobel  to:  COMPUTE!  P.O.  Box  914.  Farmingdaie.  NY  11737.  Include  a  note  indicating  youE  preference  to 
receive  only  your  subscription 


Authors  of  manuscripts  warrant  that  all  materials  submitted  to  COMPUTE!  are  original  motenols  with  full  ownership 
rights  resident  in  said  authors.  By  submitting  articles  to  COMPUTEI.  authors  acknowledge  that  such  materials,  upon 
acceptance  for  publicotion.  become  the  exclusive  property  of  COMPUTEI  Publications,  Inc.  No  portion  of  this  maga- 
zine may  be  reproduced  in  any  form  without  written  permission  from  the  publisher.  Entire  contents  copyright  ©  1 985, 
COMPUTE!  Publications.  Inc.  Rights  to  progroms  developed  and  submitted  by  authors  are  explolned  In  our  author 
contract.  Unsolicited  materials  not  accepted  for  publication  in  COMPUTEI  will  be  returned  if  oulhor  provides  a  self- 
oddressed.  stamped  envelope,  Programs  (on  tope  or  disk)  must  accompany  each  submission ,  Printed  listings  are  op- 
tionol,  but  helpful.  Articles  should  be  fumistied  as  typed  copy  (upper-  and  lowercase,  please)  with  double  spacing. 
Each  page  of  your  articia  should  bear  the  title  of  the  orticle,  date  and  name  of  the  author,  COMPUTE!  assumes  no 
liability  for  errors  In  articles  or  advertisements.  Opinions  expressed  by  outhors  are  not  necessarily  those  of  COMPUTEI 


PET,  CBM.  ViC'2D  and  CommodOEe  64  are  trademarks  of  Commodore 

Business  Machines,  inc.  and/or  Commodore  [riectronics  Limited 
Apple  IS  a  trademark  of  Apple  Computer  Company 
IQM  PC  and  PCjr  are  trademarks  of  Intemationol  Business  tviachines.  Inc. 


ATAIJI  is  a  trademofJt  of  Atari,  Inc, 
TI-99/4A  is  Q  trademork  ot  Text35  instruments,  inc. 
ffaOio  Shack  Colo'  Computer  is  a  trodemortf  of 
Tondy.  inc 


A  SPECIAL  OFFER  FROM 

COMPUTE!  BOOKS 


Buy  any  of  the  new  Apple  titles  listed  below  before  September  15,  1985  and  receive  a  $1 .00  discount  on  each 
book,  These  information-packed  books  contain  games,  applications  programs,  buying  guides.  stef>by-step 
instnjctions,  product  reviews,  special  tutorials  for  kids,  and  much  more  for  your  Apple  II,  II +,  lie,  lie,  or  Macintosh 
computer. 


COMPUTE!'*  Kid*  and  the  Apple 

Edward  H.  Carlson 
$12.95 

A  fun  and  easy-to-use  book  for  kids  ages 
10-14  interested  in  learning  BASiC 
progran^ming  on  their  Apple  computers. 


COMPUTEI's  First  Book  of  Apple 

Edited 
$12.95 

A  collection  of  35  exciting  gomes,  educa- 
tional programs,  home  applications,  and 
graphics  routines  for  owners  of  Apple  II, 
!l-i-,  lie,  and  He  computers. 


COMPUTEI'c  Easy  BASIC  Programs  for 
the  Apple 

Brian  Rynn 
$14.95 

A  wide-ranging  selection  of  short  BASIC 
programs  for  the  Apple  II  series  of  comput- 
ers, including  thought-provoking  games, 
home  applications,  and  business  forecast- 
ing tools. 

COMPHITEr*  Guide  to  Telecomputing 
on  the  Apple  lie 

Thomas  E.  Enright,  Joan  NIckerson.  and 
Anne  Waymon 
$9.95 

An  informative  and  eosy-to-understond 
book  for  the  beginner  which  explains  how 
to  access  bulletin  boards,  select  tele- 
communications software,  and  use  the 
Apple  lie  to  communicate  with  other 
computers  over  the  phone. 


COMPUTEI's  Apple  Game*  for  Kids 

Clarlt  ond  Kathy  H.  K(dd 
$12.95 

An  instant  library  of  quality  educational 
software  to  teach  and  entertain  the  entire 
family. 


Becomlitg  a  MacArllct 

VohS  Guzelimian 
$17.95 

An  excellent  Illustrated  guide  to  f^aclntosh 
grophlcs,  giving  you  direct  access  to  the 
power  and  flexibility  of  MacDraw, 
MacPaint,  and  MacWrite. 


Mall  In  Ihe  coupon  below  with  your  paymeni  by  September  15,  1985  to  receive  your  special  discouni  from  COMPUTE!  Books. 


To  order  your  Apple  tllies,  call  toil-free  800-334-086B  (in  NC  919-275-9809),  or  mall  this  coupon  with  your 
payment  to  COfVlPUTE!  Boolts,  P.O.  Box  5058,  Greensboro,  NC  27403. 

COMPUTEI's  First  Book  of  Apple.  69-8     $12,95 

COMPUTEI's  Kids  and  the  Apple.  7&0  $12.95 

Becoming  a  MacArtist.  80-9     $17.95 

COMPUTEI's  Easy  BASIC  Programs  for  the  Apple.  88-4   $14.95 

COMPUTEI's  Apple  Games  for  Kids.  91-4   $12.95 

COMPUTEI's  Guide  to  Telecomputing  on  the  Apple  lie.  98-1    $9.95 

Subtotal  S 


ALL  ORDERS  MUST  BE  PREPAID 

n  Payment  enclosed  (check  or  money  order) 

D  Charge    D  Visa    D  MasterCard    D  American  Express 


Account  No. 


-Exp.  Dot© 


_L 


(Rec    ed) 


Less  Si. 00  per  book  discount  

NC  residents  odd  4.5%  sales  tax  

Add  $2.00  PER  BOOK  for  shipping  

Total  payment  enclosed  

Please  allow  i-6  weeks  for  aelivory.    All  povmsnts  must  b«  in  U.S.  funds 


Signature 

Name    

Address    _ 

City  

State    


.  Zip  Code 


jsaiisi 


Readers  Feedback 


Ihe  Editors  ond  Readers  of  COMPUTE! 


If  you  have  any  questions,  comments,  or 
suggestions  you  would  like  to  see  ad- 
dressed in  this  column,  write  to  "Readers' 
Feedback,"  compute!,  P.O.  Box  5i06, 
Greensboro,  NC  27403.  Due  to  the  volume 
of  mail  we  receive,  we  regret  that  we 
cannot  provide  personal  answers  to  tech- 
nical  questions. 


Modular  Phone  Booths 

I'm  writing  a  book — not  on  computers, 
but  on  radio  news.  Like  you,  we  make 
great  use  of  the  telephone  for  relaying 
material  recorded  on  cassette.  Ours  is 
analog  voice  material,  and  the  similar- 
ity of  what  we  do  to  computer  applica- 
tions of  the  phone  prompted  me  to 
write. 

I've  tried  without  success  to  inter- 
est Ma  Bell  and  GTE  in  installing  modu- 
lar jacks  on  their  pay  phones.  This 
would  allow  us  to  use  a  simple  patch 
cord  to  go  from  a  cassette  recorder  out- 
put without  wrenching  off  the  phone 
handset  cover  or  using  an  acoustic  cou- 
pler, which  lowers  quality. 

Are  you  aware  of  any  attempts  by 
computer  users  (or  manufacturers)  to 
get  direct  access  to  phone  equipment?  I 
would  imagine  this  would  be  valuable 
for  both  groups,  doing  away  with  the 
need  for  acoustic  couplers,  plus  their 
extra  cost  and  size. 

I'd  appreciate  hearing  of  any  ef- 
forts you're  aware  of  on  pay  phone 
access.  It  may  take  the  clout  of  manu- 
facturers, computer  users,  and  com- 
puter publications  to  convince  these 
giant  phone  utilities  to  allow  direct  pay 
phone  access. 

F.  Gifford 

We  haven't  heard  of  any  such  lobbying 
efforts  among  computer  hobbyists,  but 
your  most  likely  allies  would  be  user 
groups  that  cater  to  portable  computer 
owners.  For  instance,  there's  a  special 
interest  group  (SIG)  on  the  CompuServe 
Information  Service  for  users  of  the  Radio 
Shack  TRS-80 Model  200.  As  active  mem- 
bers of  a  commercial  telecomputing  net- 
work, these  people  are  also  likely  to  have 
encountered  the  same  problems  that  you 
have.  Battery-powered  lap  portables  with 
built-in  direct-connect  modems  are  won- 
derfully convenient  for  traveling  journal- 


ists and  business  people,  but  as  you  point 
out,  the  acoustic  cups  necessary  to  link 
them  to  pay  phones  are  bulky,  clumsy,  and 
less  reliable. 

However,  it  seems  unlikely  that  the 
phone  companies  will  bend  to  your  de- 
mands anytime  soon.  For  one  thing,  porta- 
ble computer  users  (and  radio  journalists) 
encompass  a  pretty  small  minority  at  this 
time— loo  small,  we  suspect,  to  justify 
modifying  all  the  pay  phones  in  the  coun- 
try. More  importantly,  handsets  attached 
to  public  phones  with  modular  jacks 
would  be  tempting  targets  for  thieves. 
Anybody  could  unplug  the  handset  and 
run  off  with  it.  Of  course,  pay  phones 
could  be  redesigned  with  a  conventionally 
attached  handset  and  a  modular  jack  as  an 
accessory.  Perhaps  this  will  happen  some- 
day when  portable  computers  are  built 
into  wristwatches  and  nearly  everybody 
has  one. 

By  the  way,  while  you're  lobbying, 
you  might  also  want  to  target  hotels  and 
motels— we've  found  that  many  of  them 
don't  equip  their  phones  with  modular 
jacks,  either. 


Fate  Of  The  PCjr 

Being  the  owner  of  a  PCjr  and  with  the 
recent  bad  news  from  IBM,  it  seems  I 
have  to  make  a  decision  on  my  future 
with  the  Junior.  Hopefully  you  can  give 
me  some  insight. 

1. 1  could  sell  it  and  then  buy  a  PC, 
but  that  would  cost  a  thousand  or  two 
more  for  a  system  with  similar  color 
capabilities. 

2. 1  could  move  to  an  Apple  lie,  but 
I  would  have  to  start  all  over  with  my 
software. 

3.  I  could  make  the  Junior  as  PC- 
compatible  as  possible. 

I  would  like  more  help  with  this 
third  choice.  I  have  heard  of  two  expan- 
sion chassis,  one  by  Quadram  and  an- 
other by  Racore.  Both  add  a  second 
floppy  drive,  clock,  parallel  printer 
port,  etc.  And  they  add  a  switch  to 
change  modes  from  PCjr  to  PC.  The 
Racore  also  adds  an  optional  ten- 
megabyte  hard  disk. 

Could  you  test  these  add-ons? 
Which  is  better,  a  second  floppy  drive 
or  a  hard  disk?  Will  these  chassis  help 


to  secure  what  I've  invested  in  the  Ju- 
nior, or  should  I  bail  out  altogether? 

Bob  Hana 

There's  no  reason  to  get  rid  of  your  PCjr  as 
long  as  it  meets  your  needs — and  that's 
something  only  you  can  decide.  IBM  has 
not  abandoned  the  PCjr;  although  produc- 
tion has  been  halted,  IBM  promises  to 
continue  supporting  the  computer  with 
service  and  software.  Since  the  PCjr  al- 
ready IS  fairly  compatible  with  the  PC,  a 
wide  selection  of  software  is  available  and 
will  continue  to  be  available. 

According  to  esti?nates  we've  seen, 
roughly  300,000  PCjrs  have  been  sold. 
That's  not  a  huge  base  compared  to  Com- 
modore, Tl,  Apple,  and  Atari  computers, 
but  it's  large  enough  to  guarantee  that 
software  and  expansion  hardware  will  re- 
main in  supply  in  the  immediate  future. 
Still,  in  time,  PCjr-specific  products — 
particularly  from  non-IBM  suppliers — 
may  begin  to  dry  up.  So  if  there's  anything 
you  think  your  system  might  need,  you 
should  plan  to  buy  while  it  remains 
available. 

If  you  need  to  make  your  PCjr  more 
PC-compatible,  you  must  balance  the  cost 
of  expanding  the  Junior  against  the  cost  of 
a  new  PC  or  compatible.  There  are  several 
expansion  modules  on  the  market  in  addi- 
tion to  the  products  you  mention  which 
add  more  RAM,  a  second  floppy  disk 
drive,  a  realtime  clock,  parallel  printer 
port,  hard  disk  drive,  and  so  on.  Some  of 
them  allow  more  expansion  than  others 
and  different  combinations  of  options.  See 
the  September  1984  issue  of  COMputEI's 
PC  &  PCjr  magazine  for  reviews  of  the 
Tecmar  jrCaptain  and  Legacy  expansion 
modules. 

Be  aware,  however,  that  no  matter 
which  one  you  pick,  your  PCjr  won't  be 
100  percent  PC-compatible  100  percent  of 
the  time  because  of  some  fundamental 
design  differences.  (See  "PCjr  Memory 
Compatibility,"  compute!,  March  1985.) 
Usually  this  isn't  a  major  concern,  but  you 
should  test  new  software  on  the  PCjr 
before  buying,  or  at  least  secure  return 
privileges  in  case  the  program  doesn't 
work. 

The  question  of  whether  a  hard  disk 
is  preferable  to  a  second  floppy  drive  de- 
pends on  your  needs  and  your  pocketbook. 
A  hard  disk  is  much  faster  and  stores 
much  more  data  than  a  floppy  drive,  but  it 


e     COMPUTE!     August  1985 


.nvTfw  jikj.  lArtl  rtWx  A*  (ngp  «*tA(t  *trf  p«wi  Jffnm: 
OttrfN    «l««*»nalrtiaJtoMtKtHr>«x)<Bfi«rMll>. 


1200  ^^' 


TW 


Few  word  processors  have  allowed  Atari  users  to  tap  the  full  resources  of  their  computer  until  Atari  Paper  CUp. . . 

Atari  Paper  Clip  is  an  extremely  powerful,  fully  featured  word  processor  that  will  allow  your  Atari 
to  operate  to  the  limits  of  its  potential,  with  an  ease  of  operation  and  speed  you've  never  thought  possible. 

PAPERCLIP  FOR  ATARI®AND  COMMODORE^OWNERS 
WHO  WANT  THE  VERY  BEST  IN  WORD  PROCESSING. 


30  Mural  Street 
Richmond  Hilt,  Ontario 
1.4B  IBS  CANADA 

Tfetex;  06-21-8290 


/: 


INCLUDED 


\ 


"The  Energized  Software  Company!' 


17875  Sky  Parl<  North,  SuiteP 

Irving,  California 

USA  927)4 

<416)aB1-9S16 


WRITE  TO  US  FOR  FULL  COLOUR  CATALOGUE  of  our  products  for  CO M MODORE,  ATARI,  APPLE  and  I BU  SYSTEMS 
FOR  TECHNICAL  SUPPORT  OR  PRODUCT  INFORMATION  PLSASE  PHONE  1416)381-9816 


■miex:  509-139 


t  1983  BATTERliS  INCLUDED.  APPLE.  ATARI.  COMMODORE  AND  IBM  ARE  REGISTERED  TRADEMARKS  RESPECTIVELY  OF  APPLE  COMPUTERS  INC..  ATARI  INC..  COMMODOHE 

BUSINESS  MACHINES  INC..  ANDIBM  BUSINESS  MACHINES  INC. 


costs  a  lot  more,  too.  One  thing  to  keep  in 
mitid  is  that  some  cotnmercial  software  is 
copy-protected  in  such  a  way  that  it  re- 
quires you  to  boot  off  the  floppy  even  if 
you  have  a  hard  disk. 

Commodore  INPUT  Revisited 

Your  answer  to  Scott  Mefferd's  letter 
about  suppressing  the  Commodore  IN- 
PUT question  mark  (compute!.  May 
1985)  is  incorrect.  It's  quite  easy  to  sup- 
press the  question  mark  that  INPUT 
usually  prints,  Use  POKE  19,64  before 
the  INPUT  command  to  disable  it,  and 
POKE  19,0  to  bring  it  back.  Here  is  an 
example: 

10  POKE  19,64:INPUT"ENTER 

WORD";A$ 
20  POKE  19,0;PRINT 

You  must  enter  some  value  when 
using  this  method  (vou  can't  just  press 
RETURN).  Add  a' PRINT  statement 
after  the  input,  since  the  cursor  doesn't 
automatically  go  to  the  next  line.  You 
can  also  treat  the  keyboard  as  a  periph- 
eral, reading  it  with  an  INPUT*  state- 
ment as  shown  here: 

10  OPEN  1,0:  PRINT"ENTER 

WORD"';:INPUT#l,AS 
20  PRINT:  CLOSE  1 

David  Tucci 

A  number  of  readers  have  written  to  sug- 
gest these  methods,  both  of  which  work 
fine.  The  first  method  is  simple  and  trouble- 
free  provided  you  ahvays  restore  things  to 
normal  with  POKE  19,0.  The  second 
method  takes  advaiUage  of  the  fact  that 
the  keyboard  is  just  another  peripheral 
(device  number  0)  as  far  as  the  computer  is 
concerned.  You  can  OPEN  a  communica- 
tion channel  to  the  keyboard  and  input  a 
string  with  !NPUT#,  the  same  as  with 
other  peripherals. 

A  third  method,  suggested  by  reader 
Robert  Kodadek,  bypasses  the  BASIC  IN- 
PUT routine  and  calls  CHRIN  directly. 
CHRIN  is  a  machine  language  routine 
stored  in  the  computer's  Read  Only  Mem- 
ory (ROM)  which  fetches  one  character 
from  the  designated  input  device  every 
time  it  is  called.  Since  the  keyboard  is  the 
computer's  default  input  device  (unless 
you  specify  otherwise),  CHRIN  acts  much 
like  GET,  retrieving  one  character  at  a 
time: 

10  A$  =  "":  PRINT  "ENTER  WORD:  "; 
20  SYS  65487:  A  =  PEEK{780):  IF 

A<>13  THEN  A$'=A$  + 

CHR$(A):GOTO  20 
30  PRINT:  PRINT  AS 

CHRIN  stores  the  character's  ASCII 
value  in  the  microprocessor's  accumulator 
register,  which  is  echoed  at  location  780 
in  the  Commodore  64  and  VIC-20.  If  you 
have  a  Plus/4  or  Commodore  16,  substi- 
tute the  address  2034  for  780  in  line  20. 
This  method  is  a  little  slower  than  the  first 


two  because  it  has  to  compile  the  string 
one  character  at  a  time  in  BASIC,  termi- 
nating when  it  detects  a  carriage  return 
(CHRm3)). 

Missing  Atari  Memory? 

When  I  run  the  memory  test  on  my 
Atari  800XL,  it  seems  to  check  only  the 
first  40K  of  RAM.  There  are  no  red 
blocks  anywhere  on  the  screen,  but  it 
refuses  to  check  the  last  8K  of  user 
RAM.  When  I  check  RAMTOP  with 
PEEK(106),  it  returns  a  value  of  160.  If  I 
am  not  mistaken,  48K  of  RAM  should 
return  a  value  of  192.  The  only  other 
symptom  is  an  above-average  amount 
of  keyboard  lockup,  What's  wrong 
here? 

Dave  Nessell 

Either  you  did  not  disable  BASIC  on 
powerup  by  holding  down  the  OPTION 
key  or  you  have  a  cartridge  installed.  A 
cartridge  or  the  built-in  BASIC  uses  the 
top  8K  of  your  48K  of  memory.  To  free  up 
this  8K  of  RAM,  disable  BASIC  or  remove 
the  cartridge  when  running  the  memory 
test. 

The  keyboard  lockups  are  probably 
unrelated  to  the  results  of  the  memory 
test.  Instead,  BASIC  is  most  likely  to 
blame.  The  first  Atari  BASIC  cartridge 
suffered  from  a  lockup  bug  that  was  sup- 
posedly fixed  in  revision  B  BASIC,  the 
version  built  into  the  600XL  and  800XL 
Unfortunately,  the  fix  only  made  the  prob- 
lem worse.  (See  "INSIGHT:  Atari,"  COM- 
PUTE!,  May  and  June  1985.) 

Atari  has  finally  eliminated  the  lock- 
up bug  for  good  in  revision  C  BASIC.  This 
version  is  built  into  the  new  130XE  com- 
puter and  is  available  on  cartridge  for 
earlier  machines.  To  obtain  a  cartridge, 
send  S15  to: 

Atari  Corp. 
Customer  Relations 
390  Caribbean  Drive 
Sunnyvale,  CA  94088 

Resetting  The  SID  Chilp 

Does  SYS  64738  completely  reset  the 
Commodore  64  to  its  power-up  state? 
When  1  use  this  SYS  after  running  a 
music  program,  and  then  run  a  game 
program,  I  can  hear  a  faint  lingering 
tone.  This  does  not  happen  when  I  turn 
the  computer  off  and  on,  then  run  the 
game  program. 

Bruce  Snider 

You've  noticed  a  64  "feature"  that  many 
programmers  overlook.  Though  you  might 
expect  system  reset  to  clear  the  64's  SID 
(Sound  Interface  Device)  chip,  all  it  does  is 
turn  the  volume  down.  This  is  easy  to 
demonstrate.  Turn  up  the  volume  on  your 
TV  or  monitor  and  enter  the  following  line 
in  direct  mode  (without  a  line  nur7iber): 

POKE  54273,20:FOKE  S4277,15:POKE 


S4278,24Q:POKE  54276,33:POKE 
54296,15 

Press  RETURN  after  typing  this  line. 
The  SID  chip  produces  a  continuous  tone. 
Now  type  SYS  64738  and  press  RETURN, 
or  press  RUN /STOP-RESTORE.  The  vol- 
ume cuts  off  (you  may  still  hear  a  faint 
tone  in  the  background).  Enter  POKE 
54296,15  to  turn  up  the  volume  again,  and 
the  tone  comes  back  loud  and  clear,  prov- 
ing that  the  other  SID  registers  retained 
the  values  you  POKEd  in. 

SYS  64738  makes  the  computer  jump 
into  ROM  and  execute  several  reset  rou- 
tines. One  of  these  ROM  routines — called 
lOINIT — IS  supposed  to  reset  the  system 
for  normal  input/output  operations 
(lOINIT  also  executes  when  you  press 
RUN /STOP-RESTORE).  Unfortunately, 
rather  than  putting  zeros  in  ail  25  of  the 
SID  chip's  control  registers  (as  it  should 
do  to  turn  off  the  whole  chip),  lOINITjust 
puts  a  zero  in  the  volume  register  (location 
54296).  If  other  SID  registers  are  still 
active,  crosstalk  signals  may  leak  through 
to  the  chip's  output  wire,  producing  back- 
ground noise  even  though  the  SID's  vol- 
ume is  off. 

Besides  adding  unwanted  crosstalk, 
residual  SID  values  can  prevent  sounds 
from  being  heard.  The  three  low  bits  of 
location  54295  control  whether  any  of  the 
SID's  three  voices  are  routed  throug''  'he 
SID  filter.  If  any  of  these  three  bits  are  left 
on  (set  to  2)  and  the  filter  cutoff  frequency 
remains  at  an  extreme  value,  one  or  more 
of  the  voices  may  be  distorted  or 
inaudible. 

To  eliminate  such  probletns,  use  the 
statement  FOR  J= 54272  TO  54296: 
POKE  J,0:NEXT  at  the  beginning  of  ev- 
ery 64  program  that  uses  sound.  You  can 
also  execute  the  statement  in  direct  mode 
by  typing  it  in  without  a  line  number  and 
pressing  RETURN.  Incidentally,  siiice  the 
Commodore  128  emulates  a  64  when  ruji- 
ning  in  64  mode,  it  suffers  from  the  same 
problem;  however,  in  128  mode  RUN/ 
STOP-RESTORE  seems  to  clear  the  SID 
chip  correctly. 

Hex  Keypad  For  Apple  MLX 

Like  Larry  Watkins  ("Readers'  Feed- 
back," May  1985),  1  usually  enter  MLX 
machine  language  listings  with  one 
hand  and  follow  the  code  with  the  oth- 
er. Is  it  possible  to  write  a  program  for 
the  Apple  lie  that  changes  the  keys  to  a 
numeric  keypad?  I'd  like  to  see  a  hexa- 
decimal arrangement  and  a  colon  you 
don't  have  to  shift. 

Bill  Pearson 

Only  two  line  changes  are  required  to 
redefine  part  of  the  keyboard  as  a  16-key 
hexadecimal  keypad  for  "Apple  MLX" 
(which  first  appeared  in  the  June  1985 
issue  a)id  is  published  periodically  in 
COMPUTE!}.  Replace  line  410  of  MLX  and 


10     COMPUTE!      August  19B5 


BREAK! 


NA/ITH  NIGHT  iWlSSlOISF 


You  deserve  the  best.  You've  eamed  it.  Now  reward  yourself  with  a  session  of  Night  Mission  PINBALL, 
the  most  realistic  and  chatlenging  arcade  simuiatlon  ever  conceived!  ■  Stunning  graphics  and  dazzling 
f —  ,.~~^  sound  effects  put  Night  Mission  PINBALL  In  a  class  by  Itself.  Game  features:  multl 

i^ilf  ^uTfii^J^t      ball  and  multi-player  capabilities,  ten  different  professionally  designed  levels  of  play, 
^^  »'  *  'i  -^f?      and  an  editor  that  lets  you  create  your  own  custom  modes.  ■  So  take  a  break  with 
izlzir'°'J  '  I      Night  Mission  PINBALLfromSubLOGIC.  Winner  of  E/ecfron/c  Games  magazine's 
"^  i^i'  '.  Mi      t      1983  Arcade  Award  for  Best  Computer  AudioMsual  Effects. 


-7pE^^:3^g5 


.  ■^^"*tS:i'^-e-3'^^S^S5>V<&i?-:  ;>.i7?3^V?;  ft ?i€?-*i'??'> " 


See  your  dealer . ! 


or  write  or  call  lor  more  inlormatlon. 


Order  Line:  800  /  637-4983 


LOGIC 


713  Edgebrook  Drive 
Champaign  IL  61820 

(217)  359-8482  Telex:  206995 


mm 


■  "r^'i''-'- ri 


add  line  415  as  shown  here; 

410  FOR  1  =  1  TO  17:  IF  K  <  >  ASCI 

MID$(  "M,./JKL;UIOF7890", 
I,  D)  THEN  NEXT:  GOTO  420 
415  A$  =  L$  +  MID$(  "012345678 
90ABCDEF",  1, 1)  +  R$:  P  =  P  +  1 

Once  these  changes  are  made,  Apple 
MIX  accepts  7-8-9-0  for  C-D-E-F,  U-I- 
0-P  for  8-9-A-B,  J-K-L-;  for  4-5-6-7  and 
M-,--/  for  0-1-2-3.  You  can  even  put 
stick-on  numbers  on  the  front  of  the  rede- 
fined keys.  Since  you  don't  need  to  type 
colons  in  Apple  MIX  listings,  the  colon 
key  has  been  left  alone. 

Better  Atari  Color 
Combinations 

Please  tell  me  the  proper  POKE  or  SET- 
COLOR  command  to  make  my  Atari 
SOOXL's  text  blue  on  darkest  blue,  blue 
on  black,  white  on  black,  or  any  other 
combinations  that  might  be  easier  on 
one's  eyes.  Will  leaving  the  computer  in 
these  modes  for  long  periods  of  time 
damage  anything?  Is  there  any  way  to 
make  DOS  3.0  work  in  these  altered 
text  colors? 

Jeb  Branham 

It's  quite  easy  to  change  the  Atari  screen 
colors.  The  statement  SETCOLOR  1, 
color,brightness  sets  the  brightness  level 
of  text.  The  color  value  is  irrelevant,  since 
text  is  ahvays  the  same  color  as  the  back- 
ground (simply  a  different  shade).  The 
brightness  value  must  be  an  even  number 
from  0 (darkest)  to  14  (brightest).  Use  SET- 
COLOR  2,color,brightness  to  control  the 
background  color.  The  color  value  can  be 
any  number  from  0-15,  and  the  bright- 
ness can  be  any  even  number  from  0-14. 
You  can  alsp  set  the  border  color  with 
SETCOLOR  4,color,brightness. 

For  instance,  the  statements  SET- 
COLOR  1,0,10:  SETCOLOR  2,9,0  pro- 
duce light  blue  on  dark  blue.  Blue  text  on  a 
black  background  is  not  possible,  since 
both  screen  and  character  color  must  be 
the  same  color.  However,  some  shades  of 
the  same  color  look  like  different  colors. 
For  example,  bright  red-orange  looks  like 
yellow,  and  white  is  actually  "bright 
black."  Thus,  SETCOLOR  1,0,10:  SET- 
COLOR  2,0,0  gives  you  white  text  on  a 
black  screen. 

Many  people  find  it  easier  to  read 
black  text  on  a  white  background,  since 
this  combination  simulates  the  appear- 
ance of  type  on  paper.  Use  SETCOLOR 
1,0,2:  SETCOLOR  2,0,10.  You  may  have 
to  fiddle  with  the  brightness  numbers  to 
get  the  contrast  right.  Unfortunately, 
these  color  changes  are  transient.  The 
normal  screen  colors  return  when  you 
press  SYSTEM  RESET,  change  graphics 
modes,  or  go  to  DOS.  To  change  the  screen 
colors  of  the  DOS  menu,  you'd  have  to 
disassemble  DOS  to  find  the  instruction 
which  sets  the  colors  and  then  alter  the 


instruction  yourself. 

No  color  combination  will  damage 
your  TV  or  monitor  unless  you  leave  very 
bright  text  on  the  screen  for  a  significant 
period  of  time  (such  as  overnight).  Atari 
computers  have  a  built-in  protection  fea- 
ture against  burn-in:  If  you  don't  press 
any  keys  for  about  nine  tninutes,  the  com- 
puter automatically  enters  attract  mode, 
in  which  the  screen  colors  continually 
cycle  at  50  percent  brightness  until  you 
press  a  key. 

Programming  The  VIC/64 
User  Port 

I  have  built  a  breadboard  system  and 
interface  to  the  VIC-20  user  port,  but 
am  having  trouble  with  programs  to 
make  use  of  it.  Could  you  give  me  more 
information  on  how  to  program  the 
user  port? 

John  W.  Farrow,  Sr. 

The  user  port,  located  on  the  back  of  the 
cotnputer  on  the  left  side,  gives  you  direct 
access  to  the  computer  and  allows  control 
of  external  parallel  and  RS-232  serial  de- 
vices. Access  to  the  user  port  is  through 
the  VIA  (Versatile  Interface  Adapter) 
chips  on  the  VIC,  and  the  CIA  (Complex 
Interface  Adapter)  chips  on  the  64. 

Communications  with  RS-232  serial 
devices  like  modems  are  provided  for  in 
the  computers'  operating  system  via  de- 
vice 2,  so  we  assume  your  homebrew  in- 
terface makes  use  of  the  user  port's 
eight-bit  parallel  data  port.  The  parallel 
port  can  be  controlled  directly  from 
BASIC  with  PEEK  and  POKE  commands. 
When  the  port  is  being  used  for  input,  the 
address  (37136  for  the  VIC,  56577  for  the 
64)  is  PEEKed.  When  the  port  is  used  for 
output,  the  address  is  POKEd. 

Before  data  can  be  exchanged 
through  the  port,  the  function  of  the  eight 
data  lines  must  be  specified  by  setting  the 
data  direction  register  for  the  user  port 
(37138  for  the  VIC,  56579  for  the  64).  Each 
of  the  eight  bits  at  this  address  controls 
the  direction  of  data  flow  for  the  corre- 
sponding bit  of  the  user  port.  When  a  bit 
in  this  register  is  set  to  0,  the  correspond- 
ing bit  in  the  user  port  is  used  for  input. 
Setting  a  bit  in  the  data  direction  register 
to  1  indicates  that  the  user  port  bit  will  be 
used  for  output.  Pressing  RUN/STOP- 
RESTORE  or  powering  up  initializes  ail 
bits  in  the  direction  register  to  0,  setting 
all  lines  of  the  port  for  input.  POKEing  a 
value  of  255  into  the  register  will  set  all 
lines  for  output.  Any  combination  of  input 
and  output  lines  can  be  specified  by 
POKEing  the  value  for  the  desired  pattern 
of  I's  and  O's  into  the  data  direction 
register. 

Once  the  data  direction  register  is  set 
up,  the  desired  lines  of  the  user  port  can 
be  read  from  or  written  to  by  PEEKing  or 
POKEing  the  data  register.  If  a  line  is 


selected  for  data  input,  the  corresponding 
bit  in  the  data  register  will  hold  a  0  if  the 
line  is  at  its  low  state  (0  volts)  and  a  1  if 
the  line  is  at  its  high  state  (at  least  2.4 — 
but  not  more  than  5 — volts).  If  the  port  is 
set  for  output,  setting  a  bit  in  the  data 
register  to  0  causes  the  correspotiding  line 
on  the  port  to  be  set  to  its  low  state,  0 
volts.  Setting  a  bit  to  1  causes  the  voltage 
on  the  line  to  rise  to  its  high  state  (usually 
about  +5  volts).  For  example,  the  follow- 
ing statements  set  all  eight  lines  of  the 
VIC's  user  port  for  output,  then  present  a 
high  (+5V)  state  on  each  line: 

10  POKE  37138,255 
20  POKE  37136,255 

Since  applying  improper  voltages  to 
the  lines  of  the  user  port  can  damage  the 
VIA  and  CIA  chips — rendering  your  com- 
puter useless — we  recommend  that  you 
use  caution  when  experimenting  with  the 
port.  If  you're  unfamiliar  with  the  basics 
of  electronics,  you  should  connect  only 
circuits  designed  by  knowledgeable 
technicians. 

For  more  information,  and  a  simple 
peripheral  device  which  can  be  controlled 
by  the  user  port,  refer  to  Chapter  5  in 
COMPUTEI's  First  Book  of  Commo- 
dore 64.  Additional  information  can  also 
be  obtained  from  Mapping  the  VIC, 
Mapping  the  Commodore  64,  and  Pro- 
gramming the  VIC,  from  COMPUTE! 
Books.  © 


12     COMPUTEI     August  1986 


COMPUTE! 
Subscriber  Services 

Please  help  us  serve  you  better.  If  you 
need  to  contact  us  for  any  of  ttie  reasons 
listed  below,  write  to  us  at; 

COMPUTE!  Magazine 

P.O.  Box  914 
Farmingdole,  NY  11737 

or  call  the  Toll  Free  number  listed  below, 

Change  Of  Address.  Please  a  flow  us 
6-8  weeks  to  effect  the  change;  send 
your  current  malting  label  along  with 
your  new  address. 

Renewal.  Should  you  wish  to  renew  your 
COMPUTE!  subscription  before  we 
remind  you  to,  send  your  current  mailing 
label  with  payment  or  charge  number 
or  call  the  Toll  Free  number  listed  below. 

New  Subscription.  A  one  year  (1 2  month) 
US  subscription  to  COMPUTE!  is  $24.00  (2 
years,  $45.00;  3  years,  $65.00.  For  sub- 
scription rotes  outside  the  US,  see  staff 
page).  Send  us  your  name  and  address 
or  call  the  Toll  Free  number  listed  below. 
Delivery  Problems.  If  you  receive  dupli- 
cate issues  of  COMPUTE!,  if  you  experi- 
ence late  delivery  or  If  you  have  prob- 
lems with  your  subscription,  please  call 
the  Toll  Free  number  listed  below. 


COMPUTE! 
800-334-0868 

In  NC  919-275-9809 


CLOSE  ENC0UNTGR5 
OF  THE  FANTASY  KIND 


Afifit^ 


QUESTROff.  A  role-playing  game  so  spell-binding.  It  suspends  reality  and  conjures  up 
an  enchanted  world  whose  only  hope  against  the  forces  of  evli  is  you. 

QEMSTOME  WARRIOR^  A  lightning- fast  action  strategy  game  that  will  leave  you  breathless 
with  excitement  as  It  takes  you  through  the  labyrinths  of  the  netherworld  on  a  noble  quest. 

Open  them  up  and  step  through  the  gateway  to  your  fantasies  come  true. 
At  your  local  computer/software  or  game  store  today. 


QUESTRON'  Is  available  on  48R  diskette  for  AFPLC^li 
with  Applesoft  ROM,  Apple  II+,  lie,  and  lie  ($49.95). 
On  40R  diskette  for  ATARI'  home  computers  ($49.95). 
On  64K  diskette  for  COMMODORE  64'  ($39.95). 


SsSi 


GCMSTOnC  WARRIOR"  is  available  on  48K  diskette 

for  APPLF.'  II  with  Applesoft  ROM.  Apple  1I+,  lie 

and  lie  ($34.95). 

Also  on  64K  diskette  for  COMMODORE  64'  ($34.95). 


1 1985  by   STRATEGIC  SINULATIOnS,  INC.    AII  rights  reserved. 


If  there  are  no  convenient  stores  near  you,  VISA  S  M/C  holders 
can  order  direct  by  calling  800-227-1617,  ext  335  (toll  free).  In 
California,  800-772-3545,  exL  335.  Please  specify  computer  format 
and  add  $2.00  for  shipping  and  handling. 


To  order  by  mail,  send  your  check  to:  STRATEGIC  SIMULATIons  inC, 
883  Stierlin  Road,  BIdg.  A-200,  Mountain  View,  CA  94043.  (California 
residents,  add  7%  sales  tax.)  All  our  games  carry  a  "14-day  satisfaction 
or  your  money  back"  guarantee. 


WRITE  FOR  A  FREE  COLOR  CATALOG  OF  ALL  OUR  GAMES. 

AFFL£.  ATARI  and  COMMOE>ORE  64  are  trademarks  of  Apple  Computer,  Inc..  Atari,  Inc,  and  Commodore  Electronics,  Ltd,  respectively. 


Report  From 
The  Summer 


Consumer 
Electronics 


Tom  R.  Halfhill,  Editor 

Considerably  less  frantic  than  past 
Consumer  Electronic  Shows — at  least 
in  the  computer  section—this  sum- 
mer's CES  nevertheless  showcased 
some  groundbreaking  new  products. 
Foremost  was  Atari's  announcement 
of  a  mass  storage  device  that  may 
bri}ig  optical  memory  into  homes, 
schools,  and  businesses  by  early  1986. 


It  would  border  on  the  out- 
rageous to  describe  any  Con- 
sumer Electronics  Show  as 
"quiet" — considering  that  80,000 
to  100,000  retailers,  wholesalers, 
middlemen,  and  journalists  spend 
four  days  jamming  their  way  into 
convention  halls  for  what  is  billed 
as  the  world's  largest  industry  trade 
show. 

Still,  something  was  noticeably 
different  about  this  June's  CES  in 
Chicago.  The  annual  noise  which 
emanates  from  the  personal  com- 
puter section  in  the  McCormick 
West  building  had  dissipated  to  a 
muffled  roar. 

Only  two  U.S.  computer  man- 
ufacturers were  in  attendance: 
Commodore  and  Atari.  IBM  and 
Apple,  as  is  their  custom,  skipped 
the  show.  Atari,  which  a  few  weeks 
earlier  had  announced  it  was  pull- 
ing out  of  CES,  was  enticed  back  by 
the  show  management  but  occu- 

}4     COMPUTEI     August  1985 


pied  a  couple  of  meeting  rooms  in- 
stead of  its  extravagant  exhibit  of 
days  past.  And  the  lower  level  of 
McCormick  West,  once  the  exclu- 
sive domain  of  a  hundred  computer 
software  companies,  now  was  half- 
filled  with  videotape  exhibits  and 
purveyors  of  video  porn.  Rarely 
have  the  effects  of  the  much- 
publicized  industry  shakeout  been 
so  apparent. 

On  the  bright  side,  the  mood 
was  just  slightly  more  optimistic  as 
both  Atari  and  Commodore  moved 
closer  to  shipping  actual  production 
models  of  their  latest  personal  com- 
puters. In  fact,  as  the  show  opened. 
Atari  said  it  had  delivered  the  first 
5,000  of  its  new  520STs  to  Canada 
and  Europe  and  was  expecting 
large-volume  shipments  to  the  U.S. 
by  July  8.  Commodore  said  it  was 
only  weeks  away  from  shipping  the 
Commodore  128,  and  was  gearing 
up  for  a  press  conference  in  late  July 
to  officially  announce  its  eagerly 
anticipated  Amiga  computer  (see 
the  accompanying  article,  "A  Tan- 
talizing Peek  At  The  Amiga"). 

Several  software  companies 
announced  new  products  for  the 
Commodore  128,  Amiga,  and  Atari 
ST  series,  although  most  seem  to  be 
cautiously  hanging  back  until  they 
see  how  the  machines  fare. 

On  the  hardware  front,  Atari 
announced  a  mass-market  version 
of  the  ST,  Commodore  exhibited  a 
dual  disk  drive  for  the  Commodore 
128,  and  a  British  company  an- 
nounced it  would  export  a  128K 
computer  to  the  U.S.  But  the  most 
interesting  news  from  the  show 
was  a  revolutionary  new  peripheral 
displayed  for  the  first  time  by  Atari: 


A  very  fast  mass  storage  device  that 
uses  high-density  optical  discs.  It 
was  a  dramatic  demonstration  that 
the  upcoming  generation  of  person- 
al computers  will  place  much  of  the 
power  of  a  mainframe  computer  on 
a  desktop.  It  also  showed  that  the 
personal  computer  industry  is  not 
only  far  from  finished,  but  is  just 
getting  started. 


Atari's  big  announcement 
was  the  CD-ROM,  which 
stands  for  Compact  Disc- 
Read  Only  Memory.  If  you've  never 
heard  of  a  CD-ROM  before,  pre- 
pare to  read  dozens  of  articles  about 
it  in  coming  months,  because  with- 
in two  years  CD-ROMs  will  proba- 
bly be  everywhere.  (See  the 
accompanying  article,  "Monster 
Memory.") 

Atari  hooked  up  a  working 
prototype  of  a  CD-ROM  to  a  520ST 
on  the  second  morning  of  the  show, 
and  the  Atari  exhibit  was  packed 
for  the  next  three  days.  Although 
the  hardware  looked  rough,  the 
software  appeared  to  be  nearly 
complete.  In  fact.  Atari  hopes  to 
have  the  product  ready  for  sale  by 
late  this  year  or  early  1986  for  about 
$500. 

The  software  that  allows  the 
CD-ROM  to  work  with  the  520ST  is 
being  developed  by  an  optical  type- 
setting company,  Activenture,  Inc. 
of  Pacific  Grove,  California.  Acti- 
venture has  placed  an  entire  23- 
volume,  nine-million-word 
encyclopedia  plus  index  on  a  single 
optical  disc — and  the  disc  is  still 
three-quarters  empty.  The  system  is 
so  efficient  that  any  entry  can  be 
looked  up  in  a  matter  of  seconds. 
When  the  CD-ROM  is  intro- 
duced, Atari  and  Activenture  hope 
to  have  other  databases  available, 
too.  Some  examples  might  be  addi- 
tional encyclopedias,  legal  and 
medical  references,  cookbooks, 
phone  books,  and  the  whole  Li- 
brary of  Congress  card  catalog.  In 


fact,  for  reference  works,  the  CD- 
ROM  may  be  a  significant  step  to- 
ward tlie  paperless  information 
age. 

"The  ink-on-paper  business 
was  fairly  restrictive,"  says  Tom 
Rolander,  vice  president  for  engi- 
neering of  Activenture.  "The  only 
way  you  could  look  at  information 
was  in  the  way  the  original  publish- 
er had  organized  and  presented  it 
while  laying  it  down  on  paper. 
When  using  reference  material — 
which  is  why  we're  starting  with 
encyclopedias  and  things  like 
that — the  degree  of  usefulness  is 
based  on  how  well  we  can  find  the 
information  within  that  material.  In 
other  words,  how  good  its  indexing 
system  is.  What  we  have  here,  by 
connecting  the  computer  with  the 
CD-ROM,  is  the  ultimate  indexing 
tool.  We'll  know  every  reference 
there  is  to  everything  that's  in  the 
database." 

The  paperless  information  age, 
however,  is  encountering  some  re- 
sistance by  those  whose  business 
depends  on  putting  information  on 
paper — traditional  publishers.  For 
example.  Atari  and  Activenture  had 
to  delay  announcing  the  name  of 
the  encyclopedia  on  their  CD-ROM 
disc  because  the  publisher  didn't 
want  any  publicity  until  the  final 
contract  was  signed.  Rolander  says 
all  the  publishers  will  probably  fall 
in  line  once  the  first  one  does,  but 
that  many  publishers  are  wary  of 
the  new  technology. 

"They  can  charge  $1,000  for  a 
shelf-full  of  books,  but  how  much 
will  people  be  willing  to  pay  for  the 
same  information  on  one  of  these?" 
asks  Rolander,  spinning  a  disc  on 
his  finger.  "To  consumers,  it 
doesn't  look  like  they're  getting  as 
much.  Will  people  pay  $500?  Or 
$150?  Or  $50?  We  don't  know  yet. 
This  may  finally  determine  the  true 
value  of  information." 


Besides  the  CD-ROM,  Atari 
announced  two  new  vari- 
ations of  its  520ST,  the 
260ST  and  260STD.  They're  identi- 
cal to  the  520ST  except  for  three 
features:  256K  RAM  instead  of 
512K;  a  built-in  RF  modulator  so 
they  can  be  plugged  into  an  ordi- 
nary TV  set  as  well  as  color  or 
monochrome  monitors;  and  the  op- 
erating system  and  GEM  (Graphics 


Environment  Manager)  in  ROM  in- 
stead of  in  RAM.  Also,  the  260STD 
has  a  built-in  3y2-inch  floppy  disk 
drive.  They  are  scheduled  for  re- 
lease this  fall  for  $399  and  $499, 
respectively. 

Atari  says  it  plans  to  sell  the 
260ST  and  260STD  through  mass- 
market  channels,  such  as  discount 
stores,  while  restricting  the  520ST 
to  specialty  dealers,  such  as  com- 
puter shops.  This  is  a  reversal  of 
Atari's  original  plan  to  sell  the 
520ST  through  all  types  of  outlets. 

Atari  also  has  been  wavering 
back  and  forth  on  whether  the  op- 
erating system  and  GEM  will  ever 
be  in  ROM  on  the  520ST.  When  the 
520ST  was  first  announced  in  Janu- 
ary, Atari  said  all  the  system  soft- 
ware would  be  in  ROM.  But  delays 
in  debugging  the  operating  system 
prompted  Atari  to  release  it  on  disk 
with  initial  shipments  of  the  com- 
puter. Then  there  were  conflicting 
statements  about  whether  early 
520ST  owners  would  be  able  to 
upgrade  to  a  ROM-based  operating 
system  later.  (A  RAM-based  oper- 
ating system  takes  longer  to  boot 
up,  but  is  easier  to  revise;  a  ROM- 
based  system  boots  up  instandy, 
but  can  be  upgraded  only  by  replac- 
ing the  ROM  chips.) 

At  CES,  Atari  President  Sam 
Tramiel  told  COMPUTE!  that  the  op- 
erating system  will  be  transferred  to 
ROM  for  the  260ST/260STD,  and 
then  made  available  at  "minimal 
cost"  for  520ST  owners  with  RAM- 
based  systems.  "These  18  guys 
back  in  Sunnyvale  [at  Atari's  soft- 
ware department]  are  right  now 
crunching  the  code  to  get  it  into  the 
ROM  size  [192K],"  said  Tramiel. 
"TOS  [Tramiel  Operating  System] 
now  I  think  is  205K,  or  something 
like  that.  We  feel  it's  not  a  big  prob- 
lem, but  we've  got  to  get  it  done 
fast," 


Commodore  was  relatively 
idle  at  this  CES.  Its  only 
new  hardware  announce- 
ments for  the  U.S.  market  were  a 
dual  floppy  disk  drive  for  the  Com- 
modore 128  and  a  dot  matrix  print- 
er. Interestingly,  before  CES 
started.  Commodore  intended  to 
show  a  hard  disk  drive  for  the  64 
and  128,  but  pulled  the  product  at 
the  last  minute  for  unknown  rea- 
sons. Commodore  also  pulled  the 


LCD  portable  lap  computer  first 
shown  at  the  January  CES;  report- 
edly, the  machine  has  been  post- 
poned while  Commodore  concen- 
trates on  bringing  the  128  and 
Amiga  to  market. 

The  new  1572  dual  disk  drive 
combines  two  1571  drives  in  a  slim- 
line case  designed  to  sit  atop  the 
Commodore  128.  It  has  the  same 
multimode  capabilities  as  the  1571 
(Commodore  64,  Commodore  128, 
and  CP/M  formats).  Commodore 
says  it  should  be  available  this  sum- 
mer, but  no  price  was  announced. 

The  new  MPS  1000  is  a  multi- 
mode  dot  matrix  printer.  In  draft 
mode,  it  prints  at  lOO  characters  per 
second  (cps);  in  near-letter  quality 
mode,  it  prints  sharper  characters  at 
16  cps;  and  in  graphics  mode,  it  has 
a  density  of  50  to  240  dots  per  inch. 
It  can  also  print  in  widths  ranging 
from  80  to  160  columns.  It's  com- 
patible with  the  Commodore  128, 
64,  and  many  other  personal  com- 
puters. Like  the  1572  disk  drive,  it's 
scheduled  to  be  available  this  sum- 
mer, but  no  price  was  announced. 

Two  products  exhibited  at  the 
Winter  CES  were  firmed  up  at  this 
show.  The  Commodore  1670  direct- 
connect  modem,  which  transfers 
data  at  1200  bits  per  second,  will 
sell  for  around  $200  and  has  auto 
dial,  auto  answer,  auto  mode  selec- 
tion, and  auto  speed  switching  from 
300  to  1200  bps.  It  works  with  the 
128,  64,  SX-64,  Plus/4,  and  VIC- 
20.  And  the  Commodore  two-but- 
ton mouse  controller  first  seen  in 
January  will  sell  for  $49.95  and 
should  be  available  immediately.  It 
works  with  the  128,  64,  and  VIC. 

Commodore  also  showed  four 
interesting  computers  for  foreign 
markets,  but  apparently  they  won't 
be  available  in  the  U.S.  in  the  near 
future.  The  Commodore  128D  Inte- 
gral Personal  Computer  is  a  varia- 
tion on  the  128  that  separates  the 
keyboard  from  the  system  unit  and 
includes  a  built-in  disk  drive.  Com- 
modore says  it  will  be  available  in 
Europe  late  this  year.  The  PCIO  and 
PC20  are  IBM-compatible  com 'out- 
ers recently  introduced  in  Europe. 
The  PCIO  has  256K  RAM  and  two 
360K  floppy  disk  drives;  the  PC20 
has  512K  RAM,  one  floppy  drive, 
and  a  ten-megabyte  hard  disk.  And 
finally,  the  Commodore  900  Busi- 
ness Computer  is  a  multitasking, 
multiuser  workstation  that  uses  a 


August  1986    COMPWTEI      15 


Monster 
Memory 


The  CD-ROM,  an  acronym 
for  Compact  Disc-Read 
Only  Memory,  is  a  compact 
disc  audio  player  which  has  been 
slightly  modified  for  general- 
purpose  data  storage  and  interfaced 
to  a  computer. 

Compact  disc  players  are  the 
latest  rage  among  audiophiles.  Up 
to  75  minutes  of  digitally  encoded 
music  can  be  stored  in  the  form  of 
microscopic  pits  on  a  4.7-inch  rigid 
plastic  disc.  Inserted  in  a  special 
player,  the  disc  spins  at  300  r.p.m. 
while  a  miniature  laser  reads  the 
pits.  The  data  is  decoded  by  a  mi- 
croprocessor, then  converted  into 
standard  audio  signals  which  are 
fed  into  the  auxiliary  input  or  tape 
monitor  jacks  on  a  stereo  receiver. 
The  result  is  exceptionally  pure  mu- 
sic of  unprecedented  dynamic 
range  and  frequency  response,  free 
of  surface  noise  and  tape  hiss.  Fur- 
thermore, since  the  disc  is  read  by  a 
laser,  not  a  diamond  stylus,  com- 
pact discs  last  virtually  forever  with 
no  deterioration.  They  can  also  tol- 
erate rougher  handling  than  ordi- 
nary records  and  tapes. 

But  music  isn't  the  only  thing  a 
compact  disc  can  store.  Any  type  of 
information  can  be  digitized  and 
recorded  on  a  disc.  That  includes 
text,  graphics,  and  computer  pro- 
grams. And  the  capacity  is  enor- 
mous: A  single  compact  disc  stores 
about  550  megabytes.  A  megabyte 
equals  1,024K,  so  that's  roughly 
equivalent  to  1,564  floppy  disks  on 
an  IBM  PC,  3,520  disks  on  a  Com- 
modore 1541  drive,  4,022  disks  on 
an  Apple  II,  4,469  enhanced-density 
disks  on  an  Atari,  or  6,400  single- 
density  Atari  disks.  They're  cheap, 
too:  compact  discs  can  be  mass- 
produced  at  a  manufacturing  cost  of 
a  few  dollars  each  {audio  discs  cur- 
rently retail  for  about  $15).  Because 
audio  CDs  and  CD  players  are  al- 
ready in  mass  production,  CD- 
ROMs  can  debut  at  affordable 
prices. 


A  compact  disc  is  a  read-only 
storage  medium,  so  you  can't  re- 
cord data  on  it  yourself.  But  CDs  are 
ideal  for  storing  large  databases 
that  don't  have  to  be  updated  often. 
At  CES,  Atari  demonstrated  a  sam- 
ple disc  that  contained  a  23-volume, 
nine-million-word  encyclopedia. 
The  encyclopedia  was  transferred 
to  the  CD  from  magnetic  tape, 
where  it  was  stored  in  punchcard 
format — the  equivalent  of  976,000 
punchcards.  Yet,  it  fits  on  one- 
quarter  of  the  space  of  a  single  CD. 

To  think  of  a  CD  simply  as  an 
efficient  way  to  store  mass  amounts 
of  information  is  to  miss  the  point, 
however.  Like  a  floppy  disk  drive,  a 
CD  player  is  a  random-access  de- 
vice; it  can  seek  and  retrieve  any 
piece  of  data  on  the  disc  in  a  few 
seconds  without  hunting  through 
the  information  sequentially. 
Therefore,  a  CD-ROM  can  find  the 
slightest,  most  obscure  fact  in  a 
massive  database  in  less  time  than 
it  takes  you  to  pull  a  book  off  a  shelf 
and  flip  it  open  to  the  index. 

Here's  an  example:  Let's 
say  you're  a  student  re- 
searching a  report  on 
Thomas  Jefferson.  On  the  Atari  CD- 
ROM,  there  are  two  ways  to  ap- 
proach the  task. 

The  first  way  is  very  similar  to 
the  usual  method  of  looking  up 
something  in  an  encyclopedia. 
First,  you  boot  up  the  CD-ROM  on 
the  Atari  520ST.  This  takes  only  a 
few  seconds.  A  graphics  display  on 
the  screen  shows  a  bookshelf  with  a 
23-volume  encyclopedia.  By  rolling 
the  ST's  mouse  controller,  you 
move  the  screen  pointer  to  the  "J" 
volume  and  then  click  the  mouse 
button.  This  brings  up  another 
screen  with  a  graphics  picture  of  the 
book  you  selected,  opened  to  sever- 
al alphabetical  tab  entries.  You 
move  the  pointer  to  the  tab  which 
would    include   Jefferson — for    in- 


stance, Japan  to  Jet.  Another  click 
calls  up  a  screen  showing  all  the 
article  titles  within  that  section. 
When  you  move  the  pointer  to  the 
title  Jefferson,  Thomas  and  click  the 
button  again,  the  computer  loads 
the  ardcle  (and  several  preceding 
and  following  articles,  as  well)  from 
the  CD  into  memory.  It  takes  less 
than  four  seconds  for  the  CD-ROM 
to  fill  the  520ST's  entire  512K 
RAM. 

Now  you  can  read  the  article 
on  the  screen,  scrolling  or  flipping 
pages  by  clicking  the  mouse.  This 
method  of  looking  up  subjects  is 
recommended  for  those  who  aren't 
familiar  with  computers,  because  it 
requires  almost  no  computer 
knowledge. 

The  second  method  lakes 
greater  advantage  of  the  comput- 
er's power.  Instead  of  looking  up 
the  subject  alphabetically  by  yank- 
ing a  graphics  image  of  a  book  off  a 
shelf,  you  pull  down  a  menu  and 
select  the  search  screen.  This  screen 
presents  a  number  of  options;  to 
keep  it  simple,  you  can  just  type 
Thomas  Jefferson  at  the  prompt  and 
ask  for  a  general  search.  In  about 
four  seconds,  the  computer  reports 
how  many  times  the  phrase  Thomas 
Jefferson  appears  in  the  encyclope- 
dia. You  can  flip  to  the  first  occur- 
rence by  clicking  the  mouse.  Again, 
in  less  than  four  seconds,  the  com- 
puter loads  the  article  from  the  CD 
into  memory  and  even  highlights 
your  search  phrase  within  the  text. 
You  can  flip  to  subsequent  occur- 
rences merely  by  clicking  the 
mouse  button. 

What  makes  this  technique  so 
powerful  is  that  the  computer  will 
find  references  to  Thomas  Jefferson 
in  articles  that  may  never  have  been 
checked  using  the  old-fashioned 
method.  The  student  may  learn  that 
Jefferson  was  not  just  a  politician, 
but  also  an  inventor,  architect,  and 
connoisseur  of  wines.  Looking  up 
the  same  references  in  even  the 
most  thoroughly  cross-indexed  pa- 
per encyclopedia  would  be  much 
more  time-consuming. 

When  the  Atari  CD-ROM  soft- 
ware is  finished,  it  will  allow  two- 
dimensional  searches,  too.  You 
could  look  up  every  article  that  con- 
tains references  to  Thomas  Jeffer- 
son and  Thomas  Paine,  or  Thomas 


16     COMPUTE1      August  1985 


Get  I  he  jump  on  ihe  weather- 
man by  accurately  forecasting 
the  local  weather  yourself! 


The  beautiful  princess  is  held 
capt  ive  by  deadly  dragons.  Only 
a  knighl  in  shining  armor  can 
sas'e  her  nowl 


A  time-saving organizerlor 
coupons,  receipts  and  more. 


.\  scientifieaily  proven  way  to 
develop  an  awesome  memory. 


UTILITY 
AUDIT 


Cut  your  energy  cost.s  by  moni- 
toring your  phone, electricand 
gas  bills. 


-==::rr^.     -          "~'^>Y. 

ftlflWICT  «CKK?  Iri  fl  HI^K•  t, 

o-ii  J  (ri .»  mad 

BBDailQDii 

c    a 

r 

<-_-  -     --             _-^ 

Schuoi-ajje  andpre-^chuul 
children  are  rewarded  for  right 
answers,  corrected  on  their 
Wrong  ones. 


0Avip^!Ct 


^ 


You  are  trapped  in  a  five- 
stor\',  125-room  structure 
made  entirely  of  ice.  Find  the 
exit  before  vou  freeze! 


Computerize  car  maintenance 
to  improve  auto  performance, 
economy  and  resale  value. 


^EFb^KiR 


a 


A  realbrainflexer.  Deflect 
random  balls  into  targets  on 
a  constantly  changing  playfield. 


Take  control  of  your  personal 
finances  in  less  than  one  hour 
a  month. 


4THUV    PftVBENT 
a  00 


Create  multi-colored  bar 
graphs  with  a  surprisingly 
small  amount  of  memory. 


TYPINOTEAGHER 


A  fun  way  to  dramatically 
increase  typing  speed  and 
accuracy. 


Get  up  to  30  new  programs  and  games 

for  less  ttian  15  cents  each — 

every  month  in  COMPUTE! 


Every  month,  COMPUTE!  readers  enjoy  up  to 
30  brand-new,  ready-to-run  computer  pro- 
grams, even  arcade-quality  games. 

And  when  you  subscribe  to  COMPUTE!, 
you'll  get  them  all  for  less  than  15  cents  each! 

You'll  find  programs  to  help  you  conserve 
time,  energy  and  m^oney.  Programs  like  Cash 
Flow  Manager,  Retirement  Planner,  Coupon 
Filer,  Dynamic  Bookkeeping. 

You'll  enjoy  games  like  Air  Defense, 
Boggier,  Slalom,  and  High  Speed  Mazer, 

Your  children  will  find  learning  fast  and 
fun  with  First  Math,  Guess  That  Animal,  and 
Mystery  Spell. 

Looking  for  a  challenge?  You  can  write 
your  own  games.  Customize  BASIC  programs. 
Even  make  beautiful  computer  music  and 
pictures. 

It's  all  in  COMPUTE!.  All  ready  to  type 
in  and  run  on  your  Atari,  Apple,  Commodore, 
PET/CBM,  TI-99/4A,  Radio  Shack  Color 
Computer,  IBM  PC  or  IBM  PCjr. 


What's  more,  you  get  information-packed 
articles,  product  reviews,  ideas  and  advice  that 
add  power  and  excitement  to  all  your  home 
computing. 

And  when  it's  time  to  shop  for  peripherals 
or  hardware,  check  COMPUTE!  first.  Our 
product  evaluations  can  save  you  money  and 
costly  mistakes.  We'll  even  help  you  decide 
what  to  buy:  Dot-matrix  or  daisy-wheel  printer? 
Tape  storage  or  disk  drive?  What  about 
modems?  Memory  expansion  kits?  What's  new 
in  joysticks,  paddles  and  track  balls? 

Order  now!  Mail  the  postpaid  card  attached 
to  this  ad  and  start  receiving  every  issue  of 
COMPUTE!.  


For  Faster 

Service 

Call  Toll-Free 

1-800-334-0868 


COMPUTES  P.O.  Box  914,  Farmingdale,  NY  11737 


Jefferson  or  George  Washington. 
Other  options  let  you  limit  the 
search  for  occurrences  in  adjacent 
words,  single  paragraphs,  and  word 
groupings  of  various  sizes. 

If  you're  an  experienced  pro- 
grammer, you  might  be  puz- 
zled by  the  search  times 
described  above.  Even  in  superfast 
machine  language  on  the  520ST's 
68000  microprocessor,  how  can  the 
computer  search  through  nine  mil- 
lion words  in  less  than  four 
seconds? 

The  answer  is  that  the  com- 
puter can't.  Instead,  it  refers  to  an 
extremely  sophisticated  index  of 
search  tables  on  the  CD, 

The  search  tables  were  com- 
piled with  a  VAX  minicomputer  by 
Activenture,  Inc.,  the  company 
which  is  developing  the  CD-ROM 
software  for  Atari.  First,  the  VAX 
built  a  dictionary  by  identifying  ev- 
ery unique  word  in  the  encyclope- 
dia— more  than  140,000  words. 
Then  it  compiled  search  tables 
which  cross-reference  the  dictio- 
nary to  every  occurrence  of  each 
word  in  the  encyclopedia.  In  con- 
ventional book  form,  the  finished 


index  would  occupy  about  20  vol- 
umes. That  means  the  index  is  near- 
ly as  long  as  the  encyclopedia  itself. 

When  you  request  a  search,  the 
520ST  simply  consults  the  index  of 
search  tables  on  the  disc  and  rapid- 
ly locates  each  occurrence  of  the 
search  phrase.  In  effect,  the  search- 
ing has  already  been  done  for  it  by 
the  VAX. 

Retrieving  the  information  is 
very  fast,  too,  though  not  quite  as 
fast  as  with  hard  disks.  Because 
CDs  were  designed  for  storing  mu- 
sic, which  is  played  sequentially, 
their  random-access  capabilities  are 
not  as  good  as  they  could  be.  Still, 
they're  much  faster  than  most  flop- 
py disk  drives.  Data  is  stored  on  a 
CD  in  270,000  records  containing 
2,048  bytes  each;  the  average  ac- 
cess time  for  a  record  is  about  one 
second.  The  greatest  access  time — 
which  happens  when  the  head 
must  move  from  an  extreme  outside 
track  to  an  inside  track  or  vice 
versa — is  three  to  four  seconds.  To 
keep  this  from  happening  very 
often,  data  is  recorded  on  a  CD  on 
the  inside  tracks  first,  moving  out- 
ward. This  takes  advantage  of  the 
CD-ROM's  very  rapid  track-to- 
track  access  time.  To  read  a  nearby 


track,  the  player  merely  tilts  a  tiny 
mirror  to  refocus  the  laser  rather 
than  repositioning  the  entire  head. 
(Each  track  of  microscopic  pits  is 
only  two  microns — two  millionths 
of  a  meter — wide). 

Once  the  information  is  locat- 
ed, the  CD-ROM  feeds  it  to  the 
computer  at  a  rate  of  75  records 
(150K)  per  second.  To  make  sure 
the  data  arrives  without  errors,  the 
CD-ROM's  error-correction  capa- 
bilities have  been  improved  over 
that  of  a  regular  audio  CD  player. 
An  audio  player  can  be  expected  to 
pass  one  bad  bit  for  every  10,000 
bits — inaudible  when  listening  to 
Beethoven  or  the  Beatles,  but  not 
nearly  good  enough  for  computer 
storage.  So  CD-ROMs  employ  an 
error-checking  and  correction 
scheme  that  allocates  an  additional 
288  bytes  for  each  2,048-byte  re- 
cord. That  much  overhead — more 
than  14  percent — would  be  waste- 
ful on  a  floppy  or  hard  disk,  but 
CDs  have  room  to  burn.  The  im- 
proved error  rate  on  a  CD-ROM  is 
at  least  as  good  as  with  a  hard  disk: 
about  one  bit  error  for  every 
1,000,000,000,000  to  1,000,000, 
000,000,000  bits  (one  trillion  to  one 
quadrillion). 


Report  From  Summer  CES  Continues 
Unix-compatible  operating  system. 
Although  some  of  these  higher- 
end  computers  will  be  available  in 
Canada,  Commodore  announced 
no  plans  at  present  to  market  them 
in  the  U.S. 

Another  new  personal  com- 
puter was  announced  at 
CES  by  a  British  company, 
Amstrad,  Already  available  in  Eu- 
rope, where  several  hundred  thou- 
sand units  have  been  sold,  the 
Amstrad  CPC6128  is  scheduled  to 
be  shipped  to  the  U.S.  later  this 
year. 

The  U.S.  version  of  the  Am- 
strad has  an  8-bit  Z80A  micro- 
processor, 128K  RAM,  a  built-in 
3-inch  disk  drive,  CP/M  compati- 
bility, BASIC  and  Logo,  an  expan- 
sion interface,  joystick  port,  and 
stereo  sound  output,  It  comes  pack- 
aged in  two  configurations.  One  in- 
cludes a  green-screen  monitor  and 
WordStar  word  processor  for  $699, 
and  the  other  has  an  RGB  color 
monitor,  Amstrad's  own  word  pro- 
cessor,   and    some    entertainment 

18     COMPUTE1     August  1985 


software  for  $799. 

Briefly,  here  are  some  other 
highlights  of  the  Summer  CES: 

•  Abacus  Software  of  Grand 
Rapids,  Michigan  announced  Super 
C,  a  C  compiler  for  the  Commodore 
64  and  128.  It  has  a  full-screen  edi- 
tor with  horizontal  and  vertical 
scrolling  and  is  compatible  with 
most  other  versions  of  C.  Source 
files  up  to  41K  long  can  be  created. 

•  Commodore  is  releasing  sev- 
eral titles  for  the  128,  including/fl«e 
2.0,  an  icon-based  integrated  pack- 
age with  a  word  processor,  spread- 
sheet, and  filing  manager,  all  of 
which  can  be  manipulated  with  the 
mouse  controller;  Micro  Illustrator, 
a  graphics  drawing  program  for- 
merly available  for  the  64,  which 
takes  advantage  of  the  128's  extra 
memory  and  other  features;  and  the 
Perfect  series  for  the  CP/M  operat- 
ing system,  consisting  of  Perfect 
Writer,  Perfect  Caic,  and  Perfect 
Filer.  All  three  work  in  the  80-col- 
umn  mode,  are  capable  of  sharing 
files,  and  have  pop-up  menus,  split 


screens,  and  automatic  formatting 
for  printouts. 

•  Epyx,  Inc.  of  Sunnyvale,  Cali- 
fornia is  releasing  Winter  Gaines,  a 
sequel  to  Summer  Games,  for  the  64, 
Apple,  and  Macintosh;  two  new 
LucasFilm  games  for  the  Atari,  The 
Eidolon  and  Koronis  Rift;  The  World's 
Greatest  Football  Game  for  the  64, 
Apple,  and  Atari;  and  the  Temple  of 
Apshai  Trilogy  for  the  64,  Apple, 
Atari,  Macintosh,  and  IBM.  (Prices 
will  range  from  $19  to  $35.) 

•  Batteries  Included  of  Rich- 
mond Hill,  Ontario  is  releasing  its 
Paperclip  word  processor  for  the 
Apple  ($89.95)  and  Commodore 
128  ($119.95  with  SpeilPak);  the  Bl- 
80,  an  80-co!umn  video  adapter  on 
a  cartridge  for  the  Atari  XL  and  XE 
series  ($79.95);  an  80-column  ver- 
sion of  Atari  PaperClip  for  the  Bl-80 
($59.95);  new  versions  of  Home- 
Pnk — a  combination  word  proces- 
sor, filer,  and  terminal  program — 
for  the  IBM  PC/PCjr,  Commodore 
128,  Apple,  and  Atari  ST  ($49.95); 
an  IBM  version  of  The  Consultant 


When  sorceiy  ruled,  and  trolls  and  mlnotaurs  still  walked  this  Earth, 
a  party  of  six  intrepid  adventurers  set  out  to  find  the  Nine  Rings 
and  use  them  to  destroy  the  Dark  Lord.  This  is  your  quest. 
This  is  your... 


Ux^  for  this  new,  exciting  game 
at  your  local  computer/software 
or  game  store  today! 

If  there  are  no  convenient  stores 
near  you.  VISAS  Mastercard  holders 
can  onderdirect  by  calling 800-2Z7-1617. 
ert.  33S  (ton  free).  In  California,  call 
800-772-3S4S,  art.  335. 

To  order  by  mall,  send  your  check  to: 
STRATEGIC  SIMULATIONS.  INC..  883  Stieriln 
Road,  B!dg.  A200.  Mountain  View.  CA 
94043.  Piease  add  S2.00  lor  shipping 
and  handling  (California  residcrt- 
add  7%  sales  tax).  All  our 
games  carry  a  "14-day 
satisfaction  or  your 
money  back" 
guarantee. 

WRITE  FOR  A 
FREE  COLOR 
CATALOG  OF 
ALL  OUR  GAMES, 


JesisinjuredbyChoiiis 
the  dungeons. 


A 

Tantalizing 

Peeli 
AtTlie 
Amiga 


At  this  writing  (early  June), 
Commodore  is  scheduled 
to  unveil  its  long-awaited 
Amiga  Lorraine  computer  at  a  press 
conference  in  New  York  in  late  July. 
Although  the  machine  was  sub- 
stantially ready  in  June,  Commo- 
dore evidently  kept  it  off  the  show 
floor  at  CES  to  avoid  stealing  atten- 
tion away  from  the  Commodore 
128,  which  was  due  to  begin  ap- 
pearing on  store  shelves  within 
weeks.  Nevertheless,  despite  un- 
precedented secrecy  and  security, 
more  and  more  details  about  the 
Amiga  leaked  out  at  CES  press  par- 
ties. Also,  COMPUTE!  arranged  a 
peek  at  the  Amiga  through  a  help- 
ful source.  We  learned  that  even 
more  capabilities  have  been  added 
since  our  first  look  at  the  computer 
a  year  ago  at  the  June  1984  CES  (see 
"Software  Power!  The  Summer 
Consumer  Electronics  Show,"  Au- 
gust 1984). 

The  Amiga's  final  configura- 
tion was  still  subject  to  change 
before  its  official  introduction,  but 
here's  what  it  will  probably  include: 

•  Motorola  68000  microproces- 
sor for  the  central  processing  unit. 
This  is  the  same  16/32-bit  chip 
found  in  the  Apple  Macintosh  and 
Atari  ST  series.  It  can  address  up  to 
16  megabytes  of  memory  (1  mega- 
byte =  1024K). 

•  256K  of  RAM  (Random  Ac- 
cess Memory),  expandable  to  at 
least  512K  on  the  system  unit  and 
more  externally. 

•  192K  of  ROM  (Read  Only 
Memory)  containing  Intuition,  a 
Macintosh-like   operating   system 


with  pull-down  menus,  icons,  hier- 
archical disk  directories,  multitask- 
ing, and  mouse  support.  Unlike  the 
Macintosh's  operating  system, 
however.  Intuition  can  be  manipu- 
lated with  keyboard  controls  as 
well  as  the  mouse.  The  keyboard, 
which  is  attached  to  the  Amiga  sys- 
tem unit  with  a  coiled  cord,  in- 
cludes cursor  keys  and  a  numeric 
keypad. 

•  True  multitasking.  Thanks  to 
the  high-speed  68000  and  a  num- 
ber of  dedicated  chips  for  input/ 
output  and  other  vital  functions, 
the  Amiga  can  run  several  pro- 
grams simultaneously  with  no  ap- 
parent sluggishness,  even  while 
simultaneously  accessing  the  disk 
drive.  By  opening  screen  windows 
of  various  sizes,  you  can  watch  all 
the  programs  running  at  once.  This 
is  an  especially  useful  feature  for 
business  applications — you  could 
simultaneously  work  v«th  a  word 
processor,  terminal  program,  data- 
base manager,  and  spreadsheet 
without  stopping  one  program  to 
start  another. 

•  A  built-in  double-sided  3Vi- 
inch  disk  drive  that  stores  about 
800K  per  disk.  These  are  the  same 
hard-shell  microfloppy  disks  used 
by  the  Macintosh  and  Atari  ST  se- 
ries. Up  to  three  external  drives  can 
be  added  to  the  Amiga  by  daisy- 
chaining. 

•  Custom  chips  for  graphics 
and  animation.  Maximum  screen 
resolution  is  640  X  400  pixels 
(screen  dots),  with  additional 
graphics  modes  of  640  X  200  and 
320  X  200.  Eighty-column  text  is 
standard,  but  the  display  is  adjust- 
able to  narrower  widths  for  greater 
readability  on  low-resolution 
screens. 


•  Composite  video/mixer  input 
that  allows  you  to  feed  standard 
video  signals  into  the  Amiga,  dis- 
play them  on  the  screen,  and  then 
superimpose  the  Amiga's  text  and 
graphics.  The  external  video  source 
could  be  a  video  camera,  videocas- 
sette  recorder,  videodisc  player,  TV 
receiver,  or  even  another  computer. 
The  potential  of  this  feature  is  excit- 
ing: games  and  educational  pro- 
grams with  superrealistic 
backgrounds,  titles  for  home  video- 
tapes, and  so  on.  Furthermore,  a 
relatively  low-cost  peripheral 
called  a  frame  grabber  lets  the 
Amiga  digitize  the  incoming  video 
signal  so  it  can  be  manipulated  with 
graphics  utilities,  stored  on  disk, 
and  even  dumped  to  a  graphics 
printer. 

•  A  palette  of  4,096  colors, 
more  than  any  other  general- 
purpose  personal  computer  on  the 
market.  Up  to  32  of  these  colors  can 
be  displayed  at  once  without  spe- 
cial tricks. 

•  Video  outputs  for  TV  sets, 
composite  color  and  monochrome 
monitors,  and  high-resolution  RGB 
color  monitors.  Reportedly,  the 
RGB  output  is  analog,  like  the  Atari 
ST's,  so  it's  not  compatible  with 
RGB  monitors  designed  for  the 
Commodore  128  and  IBM  PC  com- 
puters. Analog  RGB  allows  more 
color  intensity  levels  than  IBM-type 
RGB. 

•  An  expansion  port  that  in- 
cludes every  line  on  the  system  bus 
for  almost  unlimited  expansion  ca- 
pabilities. This  could  include  co- 
processors, such  as  an  8088/8086 
board  for  IBM  compatibility.  Re- 
portedly, the  Amiga  will  be  an 
"open  system."  That  is,  to  help  in- 
dependent hardware  and  software 
designers  access  the  full  power  of 
the  computer,  Commodore  is  said 
to  be  preparing  extremely  detailed 
documentation  on  all  aspects  of  the 
Amiga  for  general  release.  One  in- 
sider who  has  seen  the  preliminary 
documentation  says  it's  so  com- 
plete you  could  almost  build  the 
system  from  scratch  using  the  infor- 
mation it  contains. 

•  Seven-level  direct  memory 
access  (DMA)  controller.  Along 
with  the  Amiga's  many  dedicated 
chips,  this  lets  the  machine  perform 
several  tasks  simultaneously  with 


20     COMPUTEI      August  W85 


ONLINE  tWe  U.S.  a 


:l■£i^^^R.A^ 

m 


"''^k 


.  W  ^JlTJtmaiiMXaCTiEaBaBiMP^wTr^Tn^sTr^ 


'^.'f'wiwa 


Be  anything  you  want  on  American  PEOPLE/LINK, 
where  people  from  across  the  country  get  together 
every  night. 

They  are  people  with  interests  in  sports,  movies, 
music,  games,  and  just  meeting  other  people  .  ,  . 
people  like  you.  Whatever  your  interests  or 
fantasies,  you'll  find  someone  to  share  them  with 
on  PEOPLE/LINK. 

See  for  yourself  why  so  many  men  and  women  are 
getting  together  and  partying  online  with  us.  Not 
screen  after  screen  of  boring  data  .  .  .  just  lots  of 
fun  and  friendly  people. 

And  our  low,  low  rates  won't  turn  your  online 
dreams  into  nightmarish  monthly  charges.  To 


discover  our  affordable  videotex  entertainment, 
call  or  write  us  today. 


PEOPLE/LINK 
"Thank  You." 


the  network  that  says 


FAMERICAN 

PEOPLE 


American  PEOPLE/LINK 

Arlington  Ridge  Office  Center 

3215  N.  Frontage  Road  -  Suite  1505 

Arlington  Heights,  IL  60004 

1-800-524-0100  (ToU  Free)     1-312-870-5200  (lUmois) 


no  apparent  slowdown.  It  also  sim- 
plifies things  for  programmers.  An 
independent  software  developer 
who  attended  a  recent  Amiga  sym- 
posium sponsored  by  Commodore 
in  Monterey,  California,  told  COM- 
PUTE! that  systems-level  program- 
ming on  the  computer  is  so  easy 
that  "it's  more  like  parameter-pass- 
ing than  programming.  You  just  de- 
cide what  you  want  to  do — puU 
data  off  the  disk,  whatever — and 
pass  the  appropriate  parameters  to 
the  operating  system,  and  the  OS 
passes  them  along  to  the  DMA  con- 
troller, and  everything  happens 
during  the  68000's  off-phase  cycle 
so  the  machine  doesn't  slow  down 
at  all."  (The  programmer's  sympo- 
sium, incidentally,  was  open  only 
to  independent  developers  and  was 
sealed  off  by  armed  guards.  Those 
who  attended  had  to  sign  a  strict 
nondisclosure  agreement.) 

•  Built-in  printer  drivers  to 
dump  the  Amiga's  bitmapped 
screens  onto  graphics  printers,  in- 
cluding color  and  inkjet  printers. 

•  Four-voice  sound  chip  with 
stereo  output.  The  Amiga's  custom 
sound  chip  routes  two  voices  to 
each  stereo  channel  for  high-fideli- 
ty reproduction  through  external 
stereo  systems.  In  addition,  the 
sound  chip  is  the  most  advanced  in 
any  personal  computer,  surpassing 
even  the  Commodore  64's  SID 
chip.  The  Amiga  can  closely  simu- 
late a  wide  variety  of  musical  in- 
struments, and  at  least  a  dozen 
instrument  sounds  are  built  in — 
such  as  guitar,  pipe  organ,  cymbals, 
drums,  piano,  and  violin.  Sound 
envelopes  (attack-decay-sustain- 
release)  can  be  modified  simply  by 
pulling  down  a  menu  and  making 
selections  with  the  pointer. 

•  Digital  sound  sampling.  At 


this  point,  it's  not  clear  whether  this 
feature  will  be  standard  or  optional. 
Even  if  it's  optional,  however,  in- 
siders say  it  will  cost  much  less  than 
anything  similar  now  on  the  market 
(the  least  expensive  high  fidelity 
samplers  now  cost  around  $2,000). 
Digital  sound  sampling  lets  you 
feed  sound  from  an  external  source 
into  a  computer,  convert  it  to  digital 
format,  and  then  play  it  back,  modi- 
fy the  waveforms,  or  store  it  on 
disk.  With  this  capability,  program- 
mers and  musicians  no  longer  have 
to  spend  hours  trying  to  simulate  a 
musical  instrument  or  sound  ef- 
fect— they  can  just  feed  the  sound 
directly  into  the  computer  from  a 
record  player,  tape  deck,  micro- 
phone, or  instrument,  and  then  ma- 
nipulate it  at  will.  In  fact,  some 
Amiga  software  developers  are  tak- 
ing this  approach  to  cut  down  de- 
velopment time. 

•  Built-in  speech  synthesis.  The 
operating  system  includes  a  speech 
program  with  text-to-speech  con- 
version. Since  this  is  a  standard  fea- 
ture that  requires  no  extra 
hardware,  you  can  expect  many 
programs  to  take  advantage  of  the 
Amiga's  speech  capabilities — in- 
cluding programs  written  by  home 
users.  COMPUTE!  has  heard  the 
Amiga  talk,  and  its  pronunciation 
was  more  understandable  than 
most  speech  synthesizers  now 
available  for  personal  computers. 

•  BASIC  programming  lan- 
guage. Unlike  the  Macintosh,  the 
Amiga  will  come  with  a  language 
for  those  who  want  to  write  their 
own  programs,  but  it's  unclear  at 
this  point  if  BASIC  will  be  built  into 
ROM  or  loaded  from  disk  into 
RAM.  Pascal  and  C  compilers  will 
be  available  soon  after  the  comput- 
er's release.  A  68000  assembler  also 


will  be  offered,  but  it  may  not  be  as 
popular  as  assemblers  on  the  cur- 
rent generation  of  personal  com- 
puters— the  compilers  are  so  fast 
that  few  programmers  are  using 
machine  language.  One  software 
developer  says  he  has  yet  to  see  a 
single  program  written  for  the 
Amiga  in  machine  language. 

•  Hard  disk  oprion.  Although 
Commodore  is  said  to  have  no  im- 
mediate plans  for  a  hard  disk  drive, 
an  independent  company  known 
for  its  IBM  peripherals  is  rumored 
to  be  preparing  a  hard  disk  with  10 
to  20  megabytes  of  storage.  This 
would  probably  interface  to  the  ex- 
pansion port. 


Tf  you  take  the  word  of  those 
who  have  worked  with  the 
Amiga,  it  is  the  most  power- 
ful personal  computer  ever  assem- 
bled. In  terms  of  performance,  they 
say  it's  more  than  a  match  for  any 
business-oriented  machine  now  on 
the  market,  and  has  the  advanced 
graphics  and  sound  features  de- 
manded by  home  users  as  well.  But 
how  much  will  it  cost? 

At  the  Monterey  symposium. 
Commodore  reportedly  told  devel- 
opers that  the  Amiga  would  be  sold 
with  an  RGB  monitor  and  some 
software  for  about  $2,000.  Since 
then,  however.  Commodore  has 
encountered  some  negative  reac- 
tion to  that  figure.  Many  observers 
think  a  lower  price  is  necessary  to 
dramatically  undercut  the  Macin- 
tosh and  IBM  PC,  and  also  to  com- 
pete with  the  Atari  ST  series  for  a 
larger  share  of  the  intermediate- 
priced  market.  At  CES,  rumor  had 
the  price  ranging  anywhere  from 
$1,300  to  $1,900,  possibly  without 
an  RGB  monitor. 


Report  From  Summer  CES  Continues 

database  manager  ($99.95);  Battery- 
Pak,  a  seven-function  desktop  ac- 
cessory for  the  Macintosh  ($49.95); 
and  literature  Challenge:  Introduc- 
tion to  Shakespeare,  an  educational 
program  for  the  Apple,  Commo- 
dore 64,  and  IBM  PC  ($29.95).  In 
addition.  Batteries  Included  an- 
nounced a  new  line  of  integrated 
programs  for  the  Atari  ST,  Com- 
modore Amiga,  and  MS-DOS  com- 
puters with  GEM.  Called  the  IS 
line,  all  the  programs  will  have 


Macintosh-like  graphics  in  color 
and  a  number  of  powerful  features. 
The  first  program.  Portfolio,  is  for 
stock  management  and  will  be  re- 
leased for  the  IBM  PC  and  Atari  ST 
this  fall  ($249,95  for  the  IBM).  Oth- 
ers in  the  series  will  be  a  word 
processor  with  built-in  spelling 
checker,  a  spreadsheet  and  graphics 
package,  and  a  database  manager. 

•  Br0derbund  Software  of  San 
Rafael,  California  announced  three 


new  programs  to  work  with  The 
Print  Shop,  its  popular  printer  utili- 
ty. They  are  The  Print  Shop  Graphics 
Library:  Disk  One,  The  Print  Shop 
Graphics  Library:  Disk  Tuw,  and  The 
Print  Shop  Companion.  Other  new 
programs  are  Bank  Street  Filer  and 
Baiik  Street  Mailer,  sequels  to  the 
Bank  Street  Writer  word  processor; 
and  Fantavision,  a  special-effects 
generator  for  the  Apple  that  uses 
animation  technology  adapted 
from  the  movie  industry.  © 


22     COMPUTEI      August  1985 


COMPUTE!  Books 

Are  More  Than  Fun  g^  Games 


They're  also  challenging,  informative.  Full  of  valuable  applications 
for  your  home  and  business.  You'll  find  that  our  newest  top-quality 
releases  contain  everything  you  need  for 
successful  word  processing,  programming, 
or  Investment  management. 


SpeedScript:  The  Word  Processor  for  the  Atari 

Charles  Brannon,  $9.95,  (Disk,  $12.95)  iSBN  0-87455-CX)5-5 

SpeedScript,  the  most  popular  program  ever  published  by 
COMPUTEf  Publications,  is  a  commercial-qualitv  word  proces- 
sor for  the  Atari  400,  800,  XL,  and  XE  computers  with  a  mini- 
mum of  24K  RAM.  Included  in  this  boolc  are  all  the  listings 
and  documentation  necessary  to  use  Atari  SpeedScript  In 
addition,  we've  included  information  and  documentation 
about  SpeedScript  that  have  never  been  published  before. 
For  the  price  of  the  book,  the  user  receives  a  commercial- 
quality  word  processor— an  exceptional  software  bargain. 
There  is  a  disic  available  for  an  additional  $12.95  which  in- 
cludes programs  in  the  bool<. 


Investment  Management  with  Your  Personal  Computer 

Richard  C.  Dorf,  $14.95.    ISBN  0-87455-005-X 

Covering  the  best  available  investment  software  for  the  IBM 
PC  and  Appie  lines  of  computers,  this  valuable  guide  dis- 
cusses and  evaluates  the  programs  that  can  help  you  better 
manage  your  investments.  This  isn't  a  manual  of  investment 
strategies;  instead  Investment  Management  with  Your  Per- 
sonal Computer  introduces  all  the  software  you'll  find  vital. 
Capsule  reviews  are  given  for  programs  ranging  from  elec- 
tronic spreadsheet  aids  and  financial  databases  to  portfolio 
managers  and  graphics  creators.  The  most  significant  soft- 
ware is  discussed  in  great  detail  and  thoroughly  evaluated. 


Mapping  the  Atari,  Revised 

Ian  Chadwick,  $16.95,  ISBN  0-87455-004-1 

This  classic  source  book  for  users  of  the  Atari  400  and  800 
has  been  updated  to  include  the  500/800XL  and  the  new  XE 
series  Atari  computers.  This  is  the  perfect  supplement  to 
the  owner's  manuals,  and  will  prove  valuable  to  both  the 
novice  and  the  expert.  As  with  most  COMPUTE!  books.  Map- 
ping the  Atari,  Revised  also  contains  useful  appendices  and 
indices. 

For  the  best  in  home  and  office  applications,  you  need  COMPUTE!  bool<s. 

Visit  your  local  computer  or  book  store  for  best-selling  COIVIPUTE!  books,  or  order  directly  from  COMPUTE!. 

Call  toll-free  800-334-0868  (in  |\IC  919-275-9809)  for  more  information. 


MAPPING 
THEAERRI 


COMPUTE!  Books  are  available  in  the  U.K.,  Europe,  Middle  East,  and 
Africa  from  Holt  Saunders,  Ltd.,  1  St.  Anne's  Road,  Eastbourne,  East 
Sussex  BN21  3UN,  England. 


COMPUTE!'  Publications  Jnc.S 


One  oi  ire  ABC  PutHshrig  Ccmpoies 


The  Beginners  Page 


Tom  Q.  Halfhiil,  Editor 


FOR-NEXT  Loops,  Part  4 

Over  the  past  few  columns,  we've 
covered  some  of  the  useful  tech- 
niques possible  with  the  FOR- 
NEXT  statement.  Even  if 
FOR-NEXT  could  do  nothing  else 
than  what  we've  demonstrated,  it 
would  be  indispensable.  Fortunate- 
ly, it  can  do  still  more — and  all  it 
takes  is  an  optional  keyword,  STEP. 
With  STEP,  you  can  construct 
"long-legged"  loops  and  counters 
by  varying  the  step  size  by  which 
the  counter  variable  is  incremented. 
You  can  even  make  FOR-NEXT 
loops  that  count  backivard.  For  the 
sake  of  illustration,  let's  say  you 
want  to  print  out  all  the  odd  num- 
bers less  than  100.  Without  a  FOR- 
NEXT  loop,  you  could  take  this 
approach: 

10  x=l 

20  PRINT  X 

30  X  =  X-l-2 

40  IF  X<100  THEN  20 

The  alternative  is  a  little  shorter  and 
easier  to  follow: 

10  FOR  X  =  l  TO  100  STEP  2 
20  PRINT  X 
30  NEXT  X 

Without  the  STEP  option  in 
the  FOR  statement  at  line  10,  this 
program  would  just  print  all  the 
numbers  from  1  to  100  because  the 
counter  variable  X  would  be  incre- 
mented by  one  during  each  pass 
through  the  loop,  as  usual.  STEP  2 
simply  tells  the  computer  to  incre- 
ment the  counter  variable  X  by  two 
during  each  pass  through  the  loop. 
That  is,  when  the  loop  begins,  X 
equals  1.  After  the  first  pass,  X 
equals  3.  After  the  second  pass,  X 
equals  5,  and  so  on. 

No  Cause  For  Alarm 

Interestingly,  although  the  FOR 
statement  in  line  10  tells  the  com- 
puter to  count  from  1  to  100,  the 
counter  variable  X  actually  reaches 
101.  You  can  verify  this  by  typing 
PRINT  X  and  pressing  RETURN  or 


ENTER  after  the  program  finishes. 
The  computer  reports  the  final  val- 
ue of  X  is  101.  But  don't  be 
alarmed — the  computer  isn't  being 
disobedient.  Although  the  final 
STEP  2  increases  X  from  99  to  101, 
the  computer  still  performs  only  50 
loops,  since  the  upper  limit  speci- 
fied in  the  FOR  statement  is  100 
and  we're  stepping  by  twos.  The 
program  works  the  same  if  you 
change  line  10  to  FOR  X  =  l  TO  99 
STEP  2. 

For  even  more  flexibility,  the 
STEP  option  lets  you  loop  in  steps 
of  any  increment,  including  frac- 
tions and  negative  numbers.  All  of 
the  following  FOR  statements  are 
valid: 

FOR  X-1  TO  1000  STEP  10 
FOR  X  =  15  TO  25  STEP  0.5 
FOR  X  =  100  TO  1  STEP  -1 
FOR  X  =  l  TO  0  STEP      0.1 

It  may  not  be  immediately  ap- 
parent why  you'd  want  to  make 
such  strange-looking  loops.  Mathe- 
matical operations  are  one  typical 
application,  but  beyond  that  it's 
hard  to  generalize.  This  kind  of 
loop  is  generally  used  to  solve  cer- 
tain programming  problems.  For 
instance,  to  make  a  musical  note 
decay  on  an  Atari,  you  could  gradu- 
ally reduce  the  volume  parameter 
of  the  SOUND  statement  with  a 
backward  loop  (FOR  X=15  TO  0 
STEP  -1:  SOUND  0,200,10,X: 
NEXT  X),  If  the  note  decays  too 
quickly,  you  could  slow  it  down  by 
reducing  the  volume  by  smaller 
steps  (STEP  -0.5  or  STEP  -0.2) 
rather  than  embedding  a  second 
delay  loop. 

As  you  write  more  programs 
and  use  FOR-NEXT  loops  more 
often,  eventually  it  will  come  to  you 
in  a  flash  that  a  fractional-  or 
backward-stepping  loop  is  exactly 
the  solution  to  your  problem. 

BASIC  Variations 

FOR-NEXT  statements  don't  follow 


the  same  rules  on  all  computers,  so 
you  might  need  to  consult  your 
BASIC  manual.  In  general,  Micro- 
soft BASICs  (built  into  Commodore 
computers,  the  Apple,  IBM,  and 
others)  let  you  omit  the  variable 
name  from  the  NEXT  statement  if 
you  want  to.  Instead  of  entering 
NEXT  X  you  can  just  type  NEXT. 
This  makes  the  loop  run  faster.  You 
can  also  close  nested  loops  in 
Microsoft  BASIC  with  a  statement 
such  as  NEXT  Z,Y,X  instead  of 
NEXT  Z:NEXT  Y:NEXT  X  or  NEXT: 
NEXT:NEXT.  (These  options  are 
not  available  in  TI  BASIC  or  Atari 
BASIC.) 

Try  to  avoid  jumping  out  of 
FOR-NEXT  loops  with  GOTO  and 
GOSUB  statements.  It's  considered 
bad  programming  form,  partly  be- 
cause it  makes  the  program  hard  to 
follow.  Besides  that,  a  program  that 
repeatedly  exits  loops  v«th  GOTO 
or  GOSUB  before  the  loops  are  fin- 
ished can  eventually  cause  some 
computers  to  crash  with  an  out-of- 
memory  error  or  the  like.  A  few 
versions  of  BASIC  have  a  special 
statement  that  lets  you  exit  a  loop 
with  GOTO  or  GOSUB  without 
causing  any  problems.  In  Atari 
BASIC  the  statement  is  POP;  it's 
not  available  in  Microsoft  BASIC. 

Almost  all  BASICs  require  the 
counter  variable  in  a  FOR-NEXT 
loop  to  be  an  ordinary  numeric 
variable;  array  variables  and  integer 
variables  are  not  allowed.  An  ex- 
ception is  IBM  BASIC,  which  does 


permit  integer  variables. 


0 


24     COMPUTEI     August  1 985 


The  complete  1541  enhancement  system . 


MAKES 
GREAT  COFFEE  I! 


\      The  1541  is  the  slowest  disk  drive  on  planet  earth. 
Even  simple  operations  seem  to  take  forever.  Quickloaders 
and  Fastload^rs  that  software-patch  the  operating  system 
are  vulnerable  to  being  knocked  out  of  memory,  rendering  them 
totally  useless.  Even  Flashier  products  that  require  permanent 
modifications  to  the  64  and  1541  can't  compete  with  the  blinding 
speed  of  STARDOS. 

STARDOS  accelerates  every  (yes,  we  said  every)  function  of  the  1541  disk  drive. 
Other  fast  loaders  only  load  PRG  files  faster.  STARDOS  also  speeds  up  SEQ,  REL,  USR 
and  DIRECT  ACCESS  files.  Everything  including  FORMAT,  VERIFY,  SCRATCH,  VALIDATE, 

INITIALIZE  and  COPY  are  much  faster,  in  addition  STARDOS  adds  a  vast  an^ay 

of  easy  to  use  commands  and  utilities  all  at  the  touch  of  a  key. 


A  sampling  of  STARDOS  features: 

Accesses  ALL  types  of  files  up  to  1,000%  faster! 

Saves  up  to  300%  faster  than  normal  (with  extended 
verify) 

•  DOES  NOT  CHANGE  THE  SPEED  AT  WHICH  THE 
DRIVE  MOTOR  SPINS 

Makes  your  1541  MORE  RELIABLE  and  LESS  PRONE 
TO  BREAK  DOVI/N  or  OVERHEAT! 
STARDOS  is  fully  expandable  for  multiple  fast 
disk  drives 

•  Easy  (5  minute)  plug  in  installation.    User  friendly 
manual 

'  100%  compatible  with  software  and  serial  bus 
peripherals 

•  Adds  years  of  life  to  your  disks  and  drive  in 
['educed  wear 

•  Cures  a  number  of  bugs  in  the  Commodore  64  and  1 541 
disk  drive  including  : 

►  The  damaging  'Head  Knock'  that  can  mis-align 
your  1541 

►  The@:  Save  with  replace  bug!! 
The  Editor  lock-up  bug 


Harness  the  full  power  of  your  disk  dnve  with  the 
built  in  DOS  wedge 

Lock/unlock  files  and  protect/unprotect  disks  from 
the  keyboard 

Powerful  sector  editor  allows  direct  viewing  of  diskette 
Upgrades  computer  and  drive  to  the  latest  Commodore 
specifications 

Instant  access  to  the  built  in  mini-wordprocessor 
for  short  notes  and  memos 
Built  in  copier  copies  all  file  types  (even  relative) 
easily  and  effectively 
-  Built  in  disk  duplicator  copies  an  entire  diskettte 
in  less  than  3  minutes 

Fully  expanded  machine  language  monitor,  always 
on  line 

*  Quality  hardware.  Full  120  day  repair  or  replace 
warranty 

•  Satisfaction  guaranteed  or  money  back —no  questions 
asked 

(Oh,  by  the  way,  we  lied,  STARDOS  makes  LOUSY 
COFFEE) 


Simply  the  best.  $74,95 
[Take  advantage  of  our  introduction  special  at  $64.95] 


Personalize  your  C64!  for  a  S10  (non-refundable)  charge 
we  will  include  a  21  character  power-on  message  with 
your  favorite  screen,  border  and  text  colors.  Example: 


Ml    K  £    '   S        COnnODOH.E-6-¥ 


Backaround. 


Text__£c<ii. 


Write  of  phone  for  additional  information. 


'Traflefna.''K  a-  ComrrxxJore  Business  Machines 


WRITE  OR  PHONE 


STikRPOtm  SOFTWARC 


Star  Route  1 0 


Gazelle,  CA  96034 


[91  B]  435-3371 


When  ordering  by  mail: 
•S64.95  +  3.00  shipping 

•  $64.95  +  4,00  COD  orders 

•  Shipping  out  of  USA  $6.00 


•  Calif,  residents  add  6%  sales  tax 

•  VISA  or  Mastercard  accepted 
Please  allow  4-6  weeks  lor  delivery. 


Computers  and  Society 


David  D.  Thornburg.  Associote  Editor 


Compilers,  Interpreters, 
And  Flow:  Part  2 

Last  month  I  argued  that  one  of  the 
reasons  Logo  isn't  used  for  serious 
appUcations  programming  is  be- 
cause it's  not  generally  available  as 
a  compiler.  I'm  not  suggesting  that 
programmers  shouldn't  have  inter- 
preters— they  should.  However,  I 
am  suggesting  that  the  ideal  pro- 
gramming environment  might  in- 
clude an  interpreter  for  writing  and 
testing  programs,  and  a  compiler  so 
the  completed  (and  mostly  de- 
bugged) programs  can  execute 
much  faster. 

There  are  many  fine  Logo  in- 
terpreters on  the  market,  but — as 
this  is  written — only  one  Logo 
compiler:  ExperLogo  from  Expertel- 
ligence  (for  the  Apple  Macintosh). 
To  illustrate  the  difference  between 
these  two  Logo  environments,  let's 
examine  a  program  that  uses  recur- 
sion to  create  a  fractal  "sponge."  (If 
you're  interested  in  programming 
fractals,  by  the  way,  you  might 
want  to  explore  the  subject  further 
in  two  of  my  books.  Discovering 
Apple  Logo  and  Beyond  Turtle 
Graphics,  both  published  by 
Addison- Wesley.) 

Here's  how  the  program  is 
vmtten  with  an  interpreter,  Apple 
Logo  11,  running  on  a  128K  Apple 
lie  or  lie: 

to  sponge:size:liDiit 
if:size  <;limit  [forward;size  stop] 
5po^ge^size/3;limit 
left  60 

sponge;size/3:liniit 
left  60 

sponge:size/3:liinit 
right  120 

sponge:size/3:liinit 
right  120 
.  sponge:size/3:Iimit 
left  60 

sponge:size/3:limit 
left  60 

sponge:size/3:litnit 
end 

Once  this  procedure  has  been 
entered,  it  can  be  executed  by  enter- 


ing its  name  with  the  appropriate 
values  chosen  for  the  variables.  For 
example,  the  basic  motif  for  the 
curve  can  be  seen  by  entering: 

right  90 
sponge  81  81 


To  see  a  more  detailed  level  of 
this  curve,  we  could  clear  the  screen 
and  enter: 

right  90 
sponge  81  3 


With  the  Logo  interpreter,  this 

picture  takes  223  seconds  to  com- 
plete. However,  as  soon  as  the  pro- 
gram is  written  it  can  be  executed; 
there  is  no  time  delay  before  the 
program  starts  to  run. 

Interactive  Rhythms 

To  write  this  program  in  ExperLogo, 
you  enter  the  same  source  code  into 
an  edit  window  on  the  Macintosh 
screen.  Then  the  code  is  selected 
and  compiled.  The  compilation 
time  for  this  program  is  19  seconds 
on  a  128K  Macintosh  (faster  on  a 
Fat  Mac  with  512K). 

Once  the  program  is  compiled, 
it  can  be  executed  with  the  com- 
mands shown  above.  The  compiled 
program  draws  the  picture  in  7  sec- 
onds— more  than  30  times  faster 
than  the  interpreted  Logo.  Of 
course,  the  compiled  program  exe- 
cutes faster  partly  because  it's  run- 
ning  on   a   16/32-bit  computer 


rather  than  on  an  8-bit  computer; 
but,  as  users  of  Macintosh  BASIC 
will  attest,  interpreters  can  run 
slowly  even  on  the  Macintosh. 

Is  the  speed  gain  important? 
For  small  programs,  it  may  not  be. 
But  humans  are  funny  creatures. 
We  have  certain  rhythms  in  our 
interactions  with  each  other  and 
with  our  machines.  If  our  technol- 
ogy is  not  operating  at  our  pace,  we 
become  frustrated.  For  example, 
even  though  most  photocopy  ma- 
chines operate  pretty  quickly,  the 
perceived  difference  between  a 
copier  that  takes  10  seconds  for  a 
copy  and  one  that  takes  only  2  sec- 
onds is  quite  large.  Those  8  seconds 
are  just  long  enough  to  destroy  the 
sense  of  flow. 

In  the  case  of  computer  pro- 
grams we  use  every  day,  this  sense 
of  flow  is  even  more  important. 
When  experimenting  with  graphic 
images  such  as  those  shown  above, 
the  sense  of  interactivity — of  being 
able  to  tinker  with  the  curves — is 
lost  when  each  picture  can  take  sev- 
eral minutes  to  create. 

The  Logo  compiler  from  Ex- 
pertelligence  is  most  welcome, 
since  it  allows  programmers  to 
write  commercially  useful  software 
with  a  powerful  language — a  lan- 
guage that  in  its  interpreted  form  is 
often  perceived  as  just  a  tool  for 
children  to  draw  pretty  pictures. 

Next  month.  111  show  that  just 
as  a  compiler  has  made  Logo  a 
much  more  useful  language,  an  in- 
terpreter is  having  the  same  effect 
on  a  language  for  which  compilers 
are  the  norm — Pascal. 

Thornburg  welcomes  letters 
from  readers,  but  regrets  that  he 
cannot  always  provide  personal  an- 
swers. Correspondence  should  be 
sent  in  care  of  COMPUTE!.  © 


26     COMPITFEI      August  1985 


Falling 
Prices 


VERlftEX 


Lifetime  warranty.  Free  piastic  library 
case.  Boxed  in  tens.  g^^    ^^^^ 

51/4"  Single  Sided/ 

IDouble  Density 99       .94 

SV-i"  Double  Sided/ 

Double  Density 1.09    1.04 


Nashua 


Boxed  in  tens.  ^^^    ^^^^ 

bVi"  Single  Sided/ 

Double  Density 1.01       .96 

5Vt"  Double  Sided/ 

Double  Density 1.11     1.06 


SONY 

The  original  SVi"  micro,  boxed 

''^*^"^-  20+      50+     100  + 

aVi"  Single  Sided       2.28     2.25     2.19 
aVi"  Double  Sided      3.45     3.39     3.35 

DRTFICRSE 

stores/files  up  to  50 
5%"  dislts.  Includes 
dividers  and  labels. 
Compare  at  only 
S8.95 

RIBBONS 

Sold  in  dozens.  £3^^ 

Epson  MX-70/80 S3.29 

Epson  MX-100 4.65 

Okidata  Micro 

801 /82A/83  A/92/93 1.39 

Okidata  Micro  84/94 3.35 

Call  lor  other  models! 

tol'l^free  1-800-USA-FLEX 

7  to  7  Central  Standard  Time 
In  lllinDJs  1-312-351'9700 

Rease  mention  mis  ad  w^en  catling  m  ycur  uraer   Master- 
Card. Visa,  COO-  or  Net  30  days  wiin  approved  credit  on 
purttisses  over  S2C0,O0  Sfiipping/Haniling  additional 
Prices  suDiect  to  change  ivitnout  notice 


COMARK,  INC.  135  N.  Brandon 
Glendale  Heights,  Illinois  60139 


STARPOINT  SOFTWARE  proudly  presents 


[say  Icepick],  a  revolutionary  new  concept  in 
software  de-protection  for  the  Commodore 
64.  ISEPIC  is  not  a  disk  duplication  system, 
but  an  extraordinary  hardware/software 
combination  that  actually  bypasses  any  disk 
protection  scheme.  ISEPIC  captures  and 
saves  the  protected  program  as  it  runs  in  the 
64"s  memory,  this  "snapshot"  becomes  ac- 
cessible to  the  user  for  complete  inspection 
and  alteration.  From  this  image,  ISEPiC  can 
automatically  create  a  compact,  auto-booting, 
fast-loading  file  which  is  completely  un- 
protected and  self  contained. 

ii    Copies  ALL  memory-resident  software 

-5^    ISEPIC'd  programs  load  many  times 
faster  than  originals 

i?  ISEPIC  is  invisible  to  software— cannot 
be  defeated 

i:i  Eliminates  drive  "knock"  due  to  antique 
protection  schemes — adds  years  of  life 
to  your  drive 

it  Automatically  "cracks"  protected  pro- 
grams into  single,  auto-booting,  super- 
fast  loading  files 

•ix    Place  multiple  programs  on  a  single 
diskette 

ix    Create  auto-booting,  fast-loading 
versions  of  your  own  programs 

•k  Cracked  programs  are  completely  self- 
contained  and  run  independently  of  the 
ISEPIC  adapter 

is     Copies  software  with  a  flick  of  a  switch 

ix    ISEPIC  comes  complete  and  ready-to- 
run,  just  plug  into  expansion  port 

■fir    Programs  cracked  by  ISEPIC  may  be 
used  on  MSD  or  4040  drives  as  well 
as  hard  disks  regardless  of  original  pro- 
tection schemes 

When  ordering  by  mail: 

*  $64.95   +    3.00  shipping 

*  S64.95    +    4.00  COD  orders 

*  Calif,  residents  add  6%  sales  tax 

*  VISA  or  Mastercard  accepted 

*  Shipping  out  of  USA  $6.00 
Please  allow  4-6  weeks  for  delivery. 


WRITE  OR  PHONE 


STi'^RPOINT  SOFTWARE 


Star  Raui;e  1 0 


Gazelle,  CA  95034 


[916)435-2371 


On  the  Road  With  Fred  D'Ignazio 


Fred  D'Ignazio,  Associate  Editor 


Buying  The  Right 
Educational  Software 

What  types  of  educational  software 
are  people  buying?  What  kind  of 
software  do  they  need? 

In  the  opinion  of  many  educa- 
tors, the  most  important  use  of  the 
computer  as  a  learning  tool  lies  in 
improving  students'  thinking  skills 
through  the  use  of  programming 
languages  like  Logo;  simulations 
and  builder  kits  like  The  Whatsit 
Corporation  (Sunburst)  and  Opera- 
tion: Frog  (Scholastic);  microworlds 
like  Rocky's  Boots  and  Robot  Odyssey 
I  (The  Learning  Company);  and 
problem-solving  software  like  The 
Pond,  SemCalc,  The  Factory,  and 
Geometric  Supposer  (Sunburst). 

But  the  sales  of  these  products 
are  dwarfed  by  the  sales  of  drill  and 
practice  programs  and  learning 
games.  A  quick  glance  at  a  recent 
Billboard  chart  of  the  ten  best- 
selling  educational  packages  shows 
that  eight  of  them  are  drill  and 
practice  programs  and  the  remain- 
ing two  are  learning  games.  Of  the 
drill  and  practice  programs,  two 
teach  how  to  type,  three  teach  basic 
math  skills,  two  help  students  prac- 
tice for  the  SAT  college-entry  exam, 
and  one  teaches  basic  vocabulary 
and  spelling  skills. 

A  look  at  TESS  (The  Educa- 
tional Software  Selector),  published 
by  the  Educational  Products  Infor- 
mation Exchange  and  the  Consum- 
ers Union,  shows  the  same 
dominance  of  drill  and  practice  pro- 
grams. Of  the  7,000  programs  listed 
in  TESS,  almost  70  percent  are  drill 
and  practice  programs,  and  only  8.3 
percent  are  simulation  and  problem- 
solving  programs.  (For  more  infor- 
mation about  TESS,  write  to  EPIE, 
P.O.  Box  839,  Water  Mill,  NY 
11976.) 

Most  experts  in  educational 
computing  have  been  critical  of 
drill  and  practice  programs  for 
years.  And  most  experts  agree  that 


problem-solving  and  simulation 
software  is  the  most  challenging 
and  interesting  software  for  anyone 
learning  on  a  computer.  If  this  is 
true,  why  are  companies  producing 
so  much  drill  and  practice  software? 
And,  more  importantly,  why  do 
people  prefer  it? 

Wary  Adults 

The  answer  is  that  most  parents 
(and  many  teachers)  are  not  ready 
for  new  kinds  of  software  that  teach 
new  skills  in  new,  unfamiliar  ways. 
They  don't  understand  how  the 
programs  work  or  what  they're 
supposed  to  teach,  or  why  it's  im- 
portant, and  they  don't  see  where 
the  programs  fit  into  their  chil- 
dren's learning.  And  since  they 
don't  see  a  need  for  the  programs, 
they  don't  buy  them. 

This  is  a  natural  reaction.  For 
most  people,  computers  are  still  a 
strange,  almost  alien,  new  medium. 
Many  parents  are  still  uncomfort- 
able having  a  computer  in  their 
home.  And  many  teachers,  too,  feel 
privately  fearful  of  computers. 
They  see  the  computer  as  a  threat — 
a  means  to  automate  them  out  of  a 
job,  The  more  the  computer's  role 
in  the  classroom  grows,  the  more 
they  see  their  own  role  being 
eroded. 

In  addition,  problem-solving 
and  thinking-skill  software  is  an 
unfamiliar,  new  application  of  com- 
puters. We  have  a  new  medium 
(computers)  trying  to  teach  'new 
concepts  (logic  and  thinking  skills) 
using  new  methods  (microworlds, 
simulations,  etc.).  This  is  too  much 
novelty  for  the  average  consum- 
er— whether  that  consumer  is  a 
parent  or  a  school  system.  As  a 
result,  most  consumers  are  buying 
drill  and  practice  programs  and 
learning  games  because  at  least  this 
way  they  see  the  computer  teaching 
practical,  necessary,  and  familiar 
skills — using  a  nonthreatening,  un- 
derstandable approach.  And  in  the 


classroom,  since  the  skills  are  famil- 
iar, the  programs  that  teach  them 
are  more  easily  integrated  into  a 
teacher's  lesson  plan  and  curricu- 
lum. A  program  that  teaches  a  child 
some  spelling  words  can  slip  effort- 
lessly into  a  curriculum,  but  what 
does  a  teacher  do  with  a  program 
that  teaches  a  child  how  to  think? 
For  the  present,  most  parents 
will  be  buying  and  using  drill  and 
practice  software  and  learning 
games,  and  ignoring  problem- 
solving  and  simulation  software. 
Does  this  mean  that  companies 
should  stop  producing  these  more 
challenging,  yet  less  successful  pro- 
grams? Hardly.  Instead,  educators 
and  software  companies  need  to 
launch  a  major  effort  to  communi- 
cate to  parents  and  teachers  the  im- 
portance of  the  new  kinds  of 
software.  To  do  this,  software  com- 
panies must  demonstrate  to  parents 
and  teachers  why  learning  these 
skills  is  important,  and  how  the 
software  fits  into  their  children's 
learning  curriculum.  Q 


28     COMPUTEI      August  1985 


For  Commodore  owners,  the  latest 
collections  from  COMPUTE!  Books 


COMPUTERS  Commodore  Collection,  Volume  1 

Twenty-eight  original  programs  for  ttie  VIC  and  64 

Edited 

The  Commodore  Collection,  an  anthology  of  28  previously 
unpublished  programs  for  the  \/IC-20  and  Commodore  64, 
continues  the  COIVIPUTEI  tradition  of  proctical  programs  in 
easy-to-use  form.  Includes  exciting  games,  stimulating 
educational  programs,  valuable  utilities,  and  useful  applica- 
tions to  make  your  Commodore  computer  an  exciting  part 
of  every  day. 

$12.95       ISBN  0-942386-55-8 


COMPUTEPs 


ommodore 

Collection 


LOLUME  TWO 


ot£i  pfogrcHTimirg  cKte  ton 
boJh  fha  w:-3Q  otkS  the 
"""     Commooc<e  64- 


i 

■ 

icoMPunrs 

ri 

Cl 

iTii>> 

lo 

%m 

Ilt- 

rCoHec 

« 

L 

^^^^b                              '» )A9  VIC  ax 

collora.  ana  uWfies  (a  Ifie 
.,.;■       VC-20  and  CcitVTKxfne  « 

i_   , 

■: 

COMPUTERS  Commodore  Collection,  Volume  2 

Programs  for  the  VIC  and  64 

Edited 

Exciting  games,  sophisticated  applications,  versatile  educa- 
tional routines,  and  helpful  programming  aids  for  the  VIC-20 
and  Commodore  64  highlight  this  second  volume  in  COM- 
PUTEI's  Commodore  Collection  series.  Included  are  some  of 
the  best  articles  and  programs  from  recent  issues  of  COM- 
PUTE! Qr\6  COMPUTEI's  Gazette,  as  well  as  many  programs 
published  here  for  the  first  time.  Designed  for  Commodore 
computer  users  of  all  levels,  it's  a  book  that  every  VIC  or  64 
owner  will  want  to  have. 

$12.95       ISBN  0-942386-70-1 


To  charge  your  order,  call  toll  free  800-334-0868  or  send  In  this 
coupon  with  your  payment  to  COMPUTEl  Books,  P.O.  Box  5058, 
Greensboro,  NO  27403. 

Please  add  $2.00  shipping  and  handling  per  copy  ordered, 

n  Payment  enclosed  (check  or  money  order) 

D  Charge:     D  Visa     D  MasterCard     D  American  Express 

Account  No „Exp,  Date 

Signature 


Name 


Address . 
City 


Please  oliow  A-t  weeks  fof  Oe^ive^y. 


state 


-Zip 


_ copies  of  COMPUTEI's 
Commodore  Collection, 
Volume  I  @  $12,95  ea._ 


7581101 


—copies  of  COMPUTEI's 
Commodore  Collection, 
Volume  2  @  $12.95  ea,_ 

Shipping  &.  handling, 
$2.00/book_ 
Total  payment- 


THE  CMO  ADVANTAGE        HOME  COMPUTERS  PORTABLE  COMPUTERS 


rS!BC 


►-  THE  BEST  PRICES! 

i^  Next  day  shipping  on  all  in  stock 
items, 

^  Free  easy  access  order  inquiry. 

.-  Orders  frdtn  outside 

Pennsylvania  and  Nevada  save 
state  sales  tax. 

1^  Free  technicial  support  with  our 

factory  trained  tectinical  Stan- 
ly There  is  no  limit  and  no  deposit 
on  C.O.D.  orders. 

^  There's  no  extra  charge  for 
using  your  credit  card.  Your  card 
is  not  charged  until  we  ship. 

^  No  waiting  period  for  cashiers 
checks. 

^  We  accept  purchase  orders  from 
qualified  corporations.  Subject  to 
approval. 

^  Educational  discounts  available 
10  qualified  institutions. 

^  FREE  CATALOG  MEMBERSHIP 


ORDER  LINE 


1-800-233-8950 

In  PA  1-800-242-4215 

CUSTOMER  SERVICE 
&  TECH  SUPPORT 

1-717-327-1450 

Dept.  A208 


SHIPPING 

Add  3%,  minimum  S500  shipping 
and  handling  on  all  orders.  Larger 
shipments  may  require  additional 
charges. 

All  Items  subject  to  availability  and 
price  change- 
Returned  shipments  may  be  sub- 
ject 10  a  reslocktng  fee 


1-800-268-4559 

Other  Provinces 

1-416-828-0866 

In  Toronto 

TELEX:  06-218960 

2505  Dunwin  Drive, 

Missfssauga.  Ontario 

Canada  L5L1T1 

All  prices  shown  are  for  U.S.A. 

orders. 

Call  Tlie  Canadian  Office  for 

Canadian  prices. 


APPLE 

APPLE  He CALL 

APPLE  He CALL 

MaclNTOSH CALL 

lie  LCD  Display CALL 

Macintosh  Software 

Lotus   Jazz.................. ........CALL 

MicrosoK  Excel CALL 

Microsoft  Business  Pah $375.00 

Living  VIdeotext 

ThinkTank  512 S159.00 

Manhatten  Ready.  Set.  Go S79.99 

Cralghton  Deveropmant 

Mac  Spell S69,99 

Monogram  Dollars  &  Sense.  ..$99  99 
Psachtrea  Back  lo  Basics  ■  GLS109.D0 
PFS  File  5  Report  (New  Version)S1Z9.D0 
Silicon  Beach  Airborn $25.99 

A  ATARI 

130XE  {12BK) CALL 

520ST  (51ZK) CALL 

ATARI  60DXL  CLOSEOUT 
$49,99 

WHILE  SUPPLIES  LAST 

800X1  64K CALL 

BSO  Interlace $119.00 

1010  Recorder $49.99 

1020  Color  Primer $79,99 

1025  Dot  Matrix  Printer S199.99 

1027  Letter  Quality  Printer $269.99 

1030  Direct  Connect  Modem...  .$59.99 

1050  Disk  Drive $179.99 

Toucti  Tablet 564.99 

7097  Atari  Logo $69.99 

4018  Pilot  (Home) $57.99 

5049  VisiCalc $49.99 

4011  Star  Raiders $12,99 

4022  Pacr^an $16.99 

6036  Atari  Writer $79,99 

BOARDS  FOR  ATARI 

Axlon  32K $39,99 

Anion  48K  {4001.,-.,. $69,99 

Axlon    128K $269,99 

Microbils  64K  (800) $109,00 

Bit  3  Full  View  80 S229,00 

f  E  commodore 
NEW 
Commodore  128,  LCD..CALL 

SX.64   Portable CALL 

Commodore  Plus  4 $199,00 

CBM    64 $149.00 

C1541  Disk  Drive ...$199.00 

C1530  Dataselte $39.99 

M-aOl  Dot  llflatrix  Printer S1B9.00 

M-802  Dot   Matrix/Serial $219.00 

llflCS  803  Dot  Matrix $179.00 

C1802  Color  Monitor $199.00 

C1660  Auto  Modem $59.99 

DPS  1101  Daisy  Printer S339.00 

Professional  Software 

Fleet  System  II  w/SpelU $49.99 

Trivia  Fever $29  99 

Word  Pro  4  Plus/5  Plus  eacti... $239.0? 

Into  Pro 3179.00 

Administrator $399.00 

Power $69.99 

File   (64| $59,99 

Report  (64) $49  99 

Precision  Software 

Superbase  64 $54.99 


BA-TTERIESi 


MCLUOO? 


Paperclip  w/Spell  Pack $79,99 

The  Consultant  DBMS $69,99 

Bus  Card  II $139,00 

80  Col  Display $139,00 


Wtrm  HEWLETT 
WIKM  PACKAI^D 

41CV $189,99 

41CX $249,99 

HP  718 $419,99 

HP  lie -,-,362.99 

HP    12C;i5C/lSC $39.99 

HP  75D $999.99 

HPIL  Module $98.99 

HPIL  Cassette  or  Printer $359.99 

Card  Reader $143.99 

Extended  Function  Module $63.99 

Time  Module $63.99 

We  stock  the  full  line  sf 
HP  calculator  products 

1V£C 

PC-S401 CALL 

PC-8201  Portable  Computer... .5289.00 

PC-8231  Disk  Drive S599.00 

PC-8221A  Thermal  Printers SK900 

PC-82B1A  Data  Recorder $99.99 

PC.B201.06  SK  RAM  Chips S10500 

SHARP 

PC-1350 5159.99 

PC-126t $159.99 

PC-1260 5109.99 

PC-1500A $165.99 

PC-1250A $88.99 

CE-125  PfinterfCassette $128.99 

CE-150  Color  Primer  Cassette.5171.99 
CE-161   16K  RAM    S134.99 


DRIVES 


■BWWH 


HARD 

PC    Slor CALL 

IDLA.<itDci:iIts 

5  meg  Removable/Internal $1399.00 

10  meg  Fixed/Internal $1249.00 

16  meg  5  Hemovable/10  Fixed52149.00 
25  meg  5  Removable/20  Fixe(1S2499.00 

10  IVteg  Bernoulli  Box S2099.00 

20  meg  aernoulli   Box $2599.00 

5  meg  "MacNoulli" $1599.00 

TAUOSAIS 
TiCHNOLOOIES 

12.  2S.  35.  50.  80  meg  (PC) 
from  $1499-00 

FLOPPY 

INDUS 

Apple  GT 5209.00 

Alan  GT -,..- $239.00 

C-64  GT $259.00 

EE3I 

A1  5  Aople 5199.00 

A2       Apple - 5199-00 

SDl   C-54  Single $219  00 

SD2  C-64  Dual $469.00 

■■ndan 

320KSV4"  (PC) $119.00 

Pume 

320K  SVj" $99.99 


ACCESSORIES 


KEVTRONICS 

KB5150.  5151,  KB5152B,  KB6153CflLL 
5151   Jt  .  5149  Jr CALL 

MEMORY  CHIPS 

4164  nPM  Cttips {ea.)$i.99 

Pronounce 
Speech  Input  System $399.00 


MODEMS 


Anchor 

Volksmodem 559.99 

Volksmodem  XII $189  99 

(.lark  IL  Serial $79.99 

Mark  VII  (Auto  Ans/Aulo  Dial). .599  99 
Mark  XII  (1200  Baud) $259.00 

HlHayes 

Smarimodem  300 $145.00 

Smarimodem  1200 $389.00 

Smarimodem   1200B $359.00 

Smarimodem  2400 $099.00 

Micromodem  II© $249.00 

Smart  Com  II $89,99 

Chronograph 5199.00 

Transei   1000 CALL 

Reach  12C[)  Baud  Half  Card,    ,5399.00 

mpp  miCROBITS 

MPP-1000E  AD/AA  (Atari) $79.99 

MPP-10B4  AD/AA  (C-64) $69.99 

[Novation^ 

Smart  Cat  Plus $319.00 

J-Cat $99  99 

Smart  Cat  103/212 .....$369.00 

Novation  2400 CALL 

212  AutoCal  II $499.00 

Apple  Cat  II, -.,.„. 5229,00 

2ia  Apple  Cat  II , $379,00 

Apple  Cat  212  Upgrade $229,00 

Macmodem $319,00 

OUADRAM 
Ouadmodem  II 

300/1200 5339,00 

300/1200/2400 $499-00 

TELELEARNIHa 
C64  300  Baud (Cioseout) $39,00 

ZT-l r^m 5339.00 

ZT-10 $309.00 

ZT-ll 5369.00 

Z-22  Video  Daia  Terminal 5529.00 

maxell. 

3Vi"  SS/DD 539.99 

3Vi"  DS/DD $54,99 

5V)"  MD-1  w/Hardcase  317,99 

5'/i''   MD-2  w/HardcasB  323,99 

5Vi"  MD-2-HD  tor  AT $44,99 

i"  Verbaiim. 

S'A"  SS/DD 321,99 

SVa"  DS(DD $29.99 

Disk  Analyzer 524.99 

Elephant  S'/i"  SS/SD $13.99 

Elephant  5yi"  SS/DD $15,99 

Elephant  5Vj"  DS/DD $16,99 

Elephant  EMSP  5V4" $24,99 

m 

5'/a"  Disk  Head  Cleaner $14,99 

DISK  HOLDERS 

INNOVATIVE  CONCEPTS 

Flip-in-File  10 53,99 

Flip-in-Flle  60 $17,99 

Flip-m-Flle  SO  w/lock $24  99 

Flip-in-File  (400/800  ROM) $11  99 

AMARAY 

50  DtsR  Tub  5V4" ,,59,99 

30  Disk  Tub  3Vi" ,58  99 


^M^S 


GRAPHICS 


<;PllQBla 

IBM $89,99 

Apple/Franklin $79,99 

■PotafDtd 

Palette $129900 


DO  Grem --„..S129.00 

M  Amtisr S139.D0 

10  Amber  IBM-Plug $169.00 

olor  300  Composite S239.00 

Olor  500  Composile/RGB 3389.00 

olor  600  Hi-Res  (640x240) 3399.00 

olor  700  Hi-Hes  (720x240) S499.0D 

olor  710  Long  Phosphor 3579.00 

2"  Amber/(3reen  Composile S99.99 

2"  Ambsr/Green  TTL (Ba.)S1 19.00 

NEC 

3   1260  Greer S59.99 

3  12Q1J120S  (ea.) S99.99 

3  1270  Green 3139.00 

3  1275  Amber 3149,00 

3  1230  3  TTU12a5  A  TTL 5149.00 

Z  1460  Color 3269.00 

Z   1410  RGB S669.00 

PRINCETDN 

1AX-12E  Amber 3189.00 

IX-9  9"  RGB $469.00 

IX.9E   Enhanced $519.00 

IX-12  12"  RGB $469.00 

IX-12E  Enhanced $559.00 

.R-12   Hi-Res $699.00 

.R-12  P  Enhanced $649.00 

15  12"  Green  Mono $119.00 

16  ^2^^  Amber  Mono S1 19.00 

21  Green  TTL $139.00 

22  Amber  TTL S149.00 

30  Mett-Res  RGB S299.00 

20  Hi-Res  RGB  (IBM) 5429,00 

40  Ultra  Hi-Res  RGB 3589,00 

400  Quadchrome  I S479.0O 

410  Quachrome  II $429,00 

420  Amberchrome $179,00 

500  Quad  Screen 31499,00 

VM   122/123 379,99 

VM  124  IBM  Amber 3149.00 

VM  130  Color $269.00 

VM  131  Color $279.00 

VM  133  RGB  $429.00 

VM  135  RGB/Color $459.00 

VM  136  RGB/Color $699.00 

220,  1230.  1240 CALL 

MMpfOCTKAL 

iraphcard..  ~. $79.99 

eriall  Card $99.99 

licrobufler  II -l- 3169.00 

licrobulter  32K $189.00 

licrofazer from  3139.00 

lajer  (Epson) from    $79.99 

^Orange  micro 

rrappler  CO  (C64) $99.99 

Tappler  +  (Apple) S39.99 

rappler  IBK*  (Apple) 3159.00 

DIGITAL  DEVICES 

pe  Face  (Alan).... $49.99 

-Prim  A  (Atari) ,..$54,99 

-Ai6/BuHer  (Atari) $74.99 

-Call  Inierface  (Atari) S39.99 

-Prim  C  (C64) $49.99 

■16  Pnnt  Buffer $74.99 

mpp  miCROBITS 

IB1150  Parallel  (Atari) 379,99 

IPP-11S0  Parallel  (Atari) $69.99 

IP-nSOXL  (Alari  1200XL) 369.99 

NcroStuffer  64K  Prim  Butter.. .3109,00 


INTERFACES 


PRINTERS 


AT-IOO  Atari  Interface  Primer.. .5139.00 

AT.5B0  Atari  Dual  Mode 3249.00 

GP-lOO  Parallel  Interlace S1B9.00 

GP-700  Color  Printer ,. 3449.00 

GP560  Parallel   Printer S239.00 

Elite  5  Letter  Quality 3239.00 

Elite  5  C64  Interface 3249.00 

Penman  3-pen 3289.00 

^CITIZEN 

MSPIO  (80  co!-> 5349.00 

MSP-15  (132  col.) $499.00 

MSP.20  (80  col.) 3489.00 

MSP-25  (132  col) $679.00 

CITCDH 

Prowriler  7500 5219.00 

Prcwriler  8510P 3299.00 

Prowriier  8510  NLQ $329.00 

Prowriter  1550P $469.00 

F10-40P  Siarwriler $669.00 

F10-55  Prinlmastar $1049.00 

Prowriter   B51Q.NLQ S329.00 

.'M»->.T.!r':^"' 

ComWntefll  Letter  Quality 3399.00 

corona 

Lazer  LP-300 32799.00 

DIABLO 

D25  Daisywheel $599.00 

630-109  Daisywheel, 31749.00 

DB01F  Daisywheel CALL 

d*isywriter 

2000 3749.00 

EPSON 

RX-eO.   FX-SO+,  LX-BO,  JX-80 CALL 

FX-100  +  ,  RX-100.  LQ1500 ..„,CALL 

Homewriter  10 CALL 

NEW!   LX-90.  SQ-2000.  DXIO.  DX20. 
HS-BQ CALL 

^UKr 

6000  Letter  Quality CALL 

6100  Letter  Quality CALL 

630O  Letter  Quality CALL 

NEC 

8027  Transportable - 3299.00 

2000  Series 3699,00 

3000  Series $1099.00 

8000  Series $1499,00 

ELF  360,. $449.00 

OKIDATA 

84,  182,  192,   193.  2410 ...CALL 

Okiraale  10  (Specily  C64/Atarl)$  199.00 
Okicnate  20  (IBM) CALL 

OLYMPIA 

Needlepoini  Dot  Matri* $299,00 

Compact  RO $339,00 

Compact  2 $369.00 

Panasonic 

KX1090 $199-00 

KX1091 3279.00 

KX1092 3409  00 

KX1093..... 3599.00 

Quadjet 3399.00 

SiSilYER-REED 

500  Letter  Quality $279.00 

550  Letter  Quality $419.00 

770  Letter  Quality $759.00 

iis©yf 

SB/SD/SG/SR  Series CALL 

Powenype  Letter  Quality CALL 

TOSHIBA 

1340  (80  column) $599.00 

P351  (132  column) 31299,00 


PC  COMPATIBLES 


IBM  PC  SYSTEMS 

Configured  to  your 

specification. 
Cali  for  Best  Price! 

IBM-PC,  (BM-PC  II,  IBM-XT,  IBM-AT 


jptiarr 


Qim 


2220  Dual  Portable $1499.00 

4220  Dual  Desktop $1399.00 

4620  10  meg  Desktop $2299.00 

Safari  (7300) CALL 

630O CALL 


SOFTWARE  FOR  IBM 


Electronic  Desk 3199.00 

.\SHTON-TATEB 

Framework 3399.00 

dBase  II $299.00 

dBase  III 3389-00 

BBORUUID 

Turbo  Pascal  3.0 349.99 

Sidekick 339.99 

h^hI£LECTRONlC  ARTS' 

Get  Organized , S69.99 

Cul  -n-  Paste 339.99 

Music  Construction $29.99 

One   on-  One 329.99 

Financial  Cookbook $34.99 

#  1  ku-Auni  Soi'tw-aiic  Iiic. 

Harvard  Project  [.Manager $20900 

Total  Project  Manager $269,00 

Human  Edge™ 

Communication  Edge , 399  99 

Management  Edge,... „. 3119  00 

Negotiation  Edge $139  00 

Sales  Edge 311900 

IMSI 
PC  PaintbruBti $94,99 

•  Lotus 

Symphony.,. .,. 3439,00 

1-2-3 $309  00 

■WH  MicnPtti 

WordStar  2000 $249,00 

WordSlar  2000-1- 3319,00 

MCROSOFT. 

Flight   Simulator 339.99 

MultiPlan $129.00 

Crosstalk $89.99 

RlBase  4000 3249.00 

RlBase  5000 3399.00 

Clout  20 $129.00 

MoItiMate 

Muiti  Mate.,  rr.rr™  !^ 3249,00 

I   1  l^^iyjtH 

PeachPack  (GUAP/AR) 5199,00 

^* 

IBM/APPLE 

Access  (NEW) 379.99 

Wriie/Graph/File/Plari (ea).S79.99 

Report 374.99 

Proof 359.99 

Mac  Software CALL 

Professional  Software 

PC  Plus/The  Boss $249,00 

SOFTWARE  GROUP 

Enable.... 3369.00 

Accounting   SORIUM/IUS 

AP/AR(GL/lfJV/OE (ea).S295  00 

Supercalc  III 3195  00 

EasyWnief  II  Sysiem $195.00 

Super  Project $195.00 

SPI 

Open  Access.. ..r7... $379.00 

SSI  Software 

Word  Perfect 3239.00 

File  Manager  (IBM),.,".". 339.99 

THOUQHTWARE 

Trigger $289.00 

Sell.  Sell,  Sell 

Training $299.00 

Application $179.00 


PC-151-21  Single  Desktop CALL 

PC-151-52  Dual  Desktop CALL 

PC-151-53  to  meg  Desktop CALL 

PC-161-21  Single  Portable CALL 

PC-161-52  Dual  Portable CALL 

Z-200   (AT) CALL 

171  (Portable) .ts. CALL 


.i>5^:: 


148  (DeskTop).- 


AT 


..CALL 


corona 

PPC400  Dual  Portable $1799.00  I 

PPCXT  10  meg  Portable $239900 

PC40022  10  meg  Desktop 51999.00  | 

@  SANVO 

MBC  550-2  Single  Drive 3699.00  I 

MBC  555-2  Dual  Drive 3969,00  j 

MBC  775  Portable 31799.00  1 

MBC  511  10  meg CALL 

MBC  675  Portable CALL  I 

NBC  aaO  Desktop CALL 


MULTIFUNCTION  CARDS 


AST 

Six  Pack  Plus 3239.00  I 

Mega  Plus  II 3269.00 

I/O  Plus  II 3139.00 

Advantage.AT 3399. (» 

Graph  Pak $599  00 

Monograph  Plus $399,00 

Preview  Mono..... .......3299.00 

PC  Net  Cards 3379.00 

5251/11  On-lihB 3799.00 

5261/12  Remote 3579.00 

3780  Emulation  Card $639.00 

BSC  Bisync 3489.00 


IRMA  3270 $879.00 

IRMA   Prim 3999.00 

easLE 

Mono   Card (Closeout) $99.99 

EVEREX 

Color  Card  (Graphics  Edge) 3299.00 

Magic  Card SJ99.00 

HERCULES 

Graphics $299,00 

Color 3159,00 

fDEAmax  -  ZPR,  64K,  C,  S,  P.S229.00 

IDEAmini  -  YPH.  C,  S.  P 3189.00 

IDEAminimax  -  MPR  12eK.. 3229,00 

IDEAshare  Software $219,00 

IDEA   5251 3699,00 

MYLEX 

The  Chairman $489,00 

PARADISF 

Modular  Graphics  Card 3274,00 

MuUi  Display  Card 5289,00 

Five  Pack  C,  S ..,3159,00 

PLANTRONICS 

Color  Plus $369,00  | 

Captain  -  64 $239,00 

Captain  Jf.  ISBK 3339.00 

Graphics   Master 3469.00 

Quadport-AT 3119.00 

Ouadmeg  -  AT  (128K) $349,00 

The  Gold  Ouadboafd $449.00 

The  Silver  Ouadboard,. $239,00 

Expanded  Ouadboard $219.00 

Quad  512 -f $229.00 

Liberty $309.00 

OuadSprint 3499.00 

OuadLink $399.00 

Quadcolor  1,... $199.00 

QuadJr.  Expansion  Chassis $469.00 

Expansion  Chassis  Memory.,..  3199.00 

Ouadmem.  Jr S199.00 

Chronagraph 379.99 

Parallel  Interface  Board 364.99 


'S>00^ 


<^-^s^ 


i 


Program  Your  Own  EPROMS 


$99.50 


(D 

c 

(D 

E 

2 

a 


^  VIC  20 
^C64 

PLUGS  INTO  USER  PORT. 
NOTHING  ELSE  NEEDED. 
EASY  TO  USE.  VERSATILE. 

•  Read  or  Program.  One  byte  or 
32K  bytes! 

OR  Use  like  a  disk  drive.  LOAD, 
SAVE,  GET  INPUT  PRINT  CMD, 
OPEN,  CLOSE— EPROM  FILES! 
Our  software  lets  you  use  familiar  BASIC  commands  to 
create,  modify,  scratcfi  files  on  readily  available  EPROM 
cfiips.  Adds  a  new  dimension  to  yourcomputing  capability. 
Works  witfi  most  Mt.  Monitors  too. 

•  Make  Auto-Start  Cartridges  of  your  programs. 

•  The  promenade"  01  gives  you  4  programming  voltagec, 
2  EPROM  supply  voltages,  3  intelligent  programming 
algoritfims,  15  bit  cfiip  addressing,  3  LED's  and  NO 
switches.  Your  computer  controls  everything  from  software! 
Textool  socket.  Anti-static  aluminum  housing. 
EPROMS,  cartridge  PC  boards,  etc.  at  extra  charge. 
Some  EPROM  types  you  can  use  with  the  promenade" 

275S  2532  462732P  27126  5133  X2816A' 

2516  2732  2584  27256  51«  52813' 

2716  27C32  2764  68764  281 5'  4801 6P' 

27C16  a732A  27C64  88766  2816" 

"ComnmocMe  B,JSin*55  Madimes  'Dffroles  eJsctncaily  eraseal^  types 


Call  Toll  Free:  800-421-7731 
In  California:  800-421-7748 


E9 


JASON-RANHEIM 

580  Parrott  St.,  San  Jose,  CA  95112 


SmftCalc 


spreadsheet 
superiority! 


A  powerful, 

easy-to-use 

electronic 

spreadsfieet 

for  home  and 

small  business 

use 

For 

Commodore  64 

and 

IBM 

personal 

computers 


444  Lake  Cook  Rd. 

Deerfield,  II.  60015 

1-800-323-9755 


More  power  for  your  dollar. 


■ 
I 

I 


i  i^HF  I    W  WiPmlmE  j 


^  Systems 


Software  Best  Sellers 


This         Last 
.Month     Month 

intdrtalnment , 


TIHtt 


Publlthftr 


Remark* 


3, 
2, 


4. 


Flight  Simulator  tt 
The  Hitchhiker's  Guide 

To  The  Galaxy 
Flight  Simulator 
F- 1 5  Strike  Eagle 
Sumrrrer  Games  II 


SubLogic  Aircraft  simulation 

Infocom  Comic  adventure  strategy 

gome 
Microsoft  Aircraft  simulation 

MicroProse  Air  combat  simulation 

Epyx  Action  sports  game 


I 


Education  _ 

1.  3. 


2. 
3. 


1. 
2. 


New  Improved 
MasferType 
Typing  Tutor  III 
Math  Blasterl 


5.        Early  Games 
4.        WordAttackl 


Scarborough 

Simon  &  Schuster 
Davidson 

Springboard 

Davidson 


Home  Managemont , 


Typing  instruction  program 

Typing  instruction  program 
Introductory  math  program, 
ages  6-12 
Educational  games,  ages  2-6 

Word  meaning  ond  usage 
program,  grades  ^-12 


1. 
2. 


3. 


Print  Shop 

Print  Shop  Graphics 

Library 
Bank  Street  Writer 
HomePak 


Broderbund 
Broderbund 


Do-it-yourself  print  shop 
100  additional  graphics 


Sroderbund  Word  Processor 

Batteries  Included     Word  processing, 

telecommunicatslons,  &  data 

management 
Meca  Home  financial  program 


a 

Q, 


a 


Andrew  Tobias's 
Managing  Your  Money 

zopyrlgti)  f PS5  by  Billboard  Publlcallans,  Inc.  Compiled  by  the  Billboard  Sesearch  Departmeryt  cind  reptlnf^  by  permlalon.  Data  as  of  6/OS/SS. 
32     COMPUTEI      AuQuSt  1985 


E 
o 


z 

m 


o 

c 
o 

o 
Z 


Telecomputing  Today 


Arian  P.  Levitan 


SIGs:  Behind  The  Scenes 

It  appears  that  1985  is  rapidly  be- 
coming a  banner  year  for  electronic 
Special  Interest  Groups  (SIGs).  Un- 
fortunately, rapid  growth  is  not 
without  its  problems. 

Electronic  SIGs  (also  known  as 
discussion  forums)  are  like  comput- 
erized clubs  where  people  with  a 
common  interest  get  together  on- 
line to  exchange  information,  ideas, 
comments,  complaints,  and  public 
domain  computer  programs.  Usually 
they  are  operated  by  commercial 
information  services  such  as 
CompuServe.  Besides  computer- 
oriented  SIGs,  there  are  groups  for 
doctors,  lawyers,  educators,  and 
other  professionals,  not  to  mention 
enthusiasts  of  travel,  cooking,  liter- 
ature, rock  'n'  roll,  politics,  human 
sexuality,  skiing,  and  ham  radio. 
There  are  SIGs  for  every  taste,  and 
new  ones  are  added  every  day. 

SIGs  are  usually  divided  into 
three  areas.  The  most  active  area  is 
a  message  system  subdivided  into 
several  sections  by  topic  where  us- 
ers can  read  and  leave  messages. 
The  oldest  messages  are  overwrit- 
ten when  a  new  message  is  added, 
so  each  message  tends  to  have  a  life 
of  a  week  or  less. 

Each  topic  section  also  has  a 
file  access  database  where  impor- 
tant messages  may  be  stored  more 
permanently  as  text  files,  and 
where  users  leave  free  copies  of 
public  domain  software. 

Finally,  each  SIG  also  has  a 
conference  area  so  online  users  can 
exchange  messages  in  an  immedi- 
ate mode.  Everything  you  type  ap- 
pears on  the  screens  of  others 
participating  in  the  conference. 

Online  Bucks 

SIGs  generate  extra  income  for 
information  services  because  they 
encourage  more  online  usage.  But 
how  valuable  are  SIGs  to  an  infor- 
mation   service's    bottom    line? 


Frankly,  most  SIGs  generate  only  a 
modest  amount  of  revenue,  and 
some  don't  break  even.  There  are, 
however,  a  significant  number  of 
SIGs  that  are  monstrous  hits,  large- 
ly due  to  the  work  of  their  sysops 
(system  operators).  In  fact,  each  of 
the  top  SIGs  generates  well  over  a 
million  dollars  a  year!  That  can 
mean  big  bucks  for  the  head  sysop. 
It's  not  uncommon  to  find  the  sys- 
op (or  company  sponsoring  the 
SIG)  pulling  down  at  least  5  percent 
of  the  gross — $50,000  a  year  or 
more.  The  assistant  sysops  general- 
ly work  for  "fame  and  glory"  and 
get  free  time  on  the  SIG  for  their 
efforts. 

Although  SIGs  used  to  be  the 
sole  province  of  CompuServe,  the 
revenues  that  they've  been  pulling 
in  lately  have  prompted  Delphi, 
The  Source,  and  other  services  to 
get  into  the  act.  And  the  competi- 
tion is  just  beginning  to  heat  up. 
The  lure  of  substantial  amounts  of 
SIG-generated  money  can  do  funny 
things  to  people. 

For  example,  the  entire  staff  of 
the  Commodore  SIG  on  one  service 
recently  jumped  ship  and  set  up 
shop  with  a  competitor.  The  defec- 
tion wasn't  a  secret — the  sysops 
used  the  SIG  message  base  to  let 
members  know  where  they  had 
gone.  And  within  the  last  year,  the 
head  sysop  of  another  popular  SIG 
had  to  contend  with  a  palace  coup 
staged  by  his  assistant  sysops.  After 
the  smoke  cleared,  there  were  two 
SIGs  instead  of  one — a  SIG  headed 
by  the  original  sysop  and  another 
by  the  rebels.  Keeping  the  SIG 
peace  might  soon  be  a  job  for  the 
United  Nations. 

Fortunately,  most  SIGs  are 
very  well  run  and  perform  a  valu- 
able function,  acting  as  information 
clearinghouses.  But  as  useful  as 
they  may  be,  there's  no  point  in 
paying  through  the  nose  to  enjoy 
the  benefits  of  regular  involvement 


in  a  SIG.  Here  are  some  general  tips 
that  can  help  you  save  money 
when  participating  in  a  SIG. 

Be  Selective 

Don't  try  to  read  every  new  item  in 
the  message  area.  Many  of  the  more 
popular  SIGs  can  turn  over  a  thou- 
sand messages  or  more  in  three  or 
four  days.  Pick  one  or  two  sections 
with  topics  that  appeal  to  you  and 
stick  with  them. 

Many  SIGs  let  you  read 
streams  of  messages  without  paus- 
ing for  a  response  from  you  be- 
tween items.  To  take  full  advantage 
of  this  feature,  download  the  mes- 
sages you  want  and  read  them  off- 
line. If  you  wish  to  reply  to  a 
message  or  leave  a  new  one  of  your 
own,  write  your  text  offline  as  well; 
you  can  send  the  entire  message  in 
a  matter  of  seconds  rather  than 
pecking  away  online.  (See  last 
month's  column  for  hints  on  this 
technique.) 

Unless  you  have  a  burning 
question  that  can't  be  answered  by 
the  folks  who  access  the  message 
section,  pass  up  regularly  attending 
special  online  conferences.  Com- 
plete transcripts  of  the  conferences 
are  usually  available  in  the  file  ac- 
cess areas  shortly  afterward.  Given 
the  speed  that  most  people  type, 
the  text  of  a  two-hour  conference 
can  usually  be  downloaded  in 
about  five  minutes.  If  you  can't  re- 
sist conferences,  don't  bother  to 
sign  on  at  1200  or  2400  bps  if  the 
service  charges  hourly  premiums 
for  these  higher  speeds.  01'  300 
baud  is  just  fine  for  conferences  and 
will  keep  the  hourly  rate  you  pay  at 
a  minimum. 

Finally,  don't  ignore  using  the 
public  domain  program  library  of 
your  local  computer  user  group  as 
an  alternative  to  downloading  files 
from  SIGs.  An  entire  diskful  of  pro- 
grams from  a  user  group  usually 
costs  no  more  than  an  hour  of  time 
on  a  SIG.  © 


August  1985     COMPUTEI      33 


INSIGHT:  Atari 


Bill  Wilkinson 


Atari  Input/Output 

Much  of  what  I'm  about  to  discuss 
this  month  has  appeared  in  this 
column  before.  And  the  bulk  of  this 
information  can  also  be  found  in 
the  Atari  Technical  Reference  Man- 
ual— presuming  you  can  read 
"techlish."  But  this  intro  is  neces- 
sary so  we  can  start  talking  about 
the  meat  of  our  subject  next  month. 

Still  with  me?  Let's  go.  Atari's 
operating  system  (OS) — which, 
like  the  OS  in  any  eight-bit  com- 
puter, takes  up  the  bulk  of  Read 
Only  Memory  (ROM) — is  really  a 
thing  of  beauty.  In  fact,  it  may  be 
the  only  consistent  OS  to  be  found 
in  any  microcomputer,  short  of 
those  sporting  UNIX  or  its  deriva- 
tives. CP/M  and  MS-DOS  are  such 
kludges  that  most  commercial  pro- 
grams bypass  the  OS.  (That's  why 
there  are  so  many  "almost  PC- 
compatibles.")  The  Commodore 
64's  operating  system  comes  close, 
but  its  disk  input/output  is  difficult 
at  best.  And  Apple's  ProDOS  man- 
ual states  that  "users  desiring  to 
perform  I/O  to  devices  other  than 
the  disk  drive  are  on  their  own!" 

Atari  users,  on  the  other  hand, 
enjoy  a  system  with  such  complete 
support  that,  for  most  programs,  all 
necessary  input/output  operations 
can  be  executed  by  calling  a  single 
subroutine!  That  subroutine  is 
called,  appropriately.  Central 
Input/Output  (CIO).  By  calling  CIO 
with  the  proper  values  in  certain 
memory  locations  and  the  proper 
pointer  in  the  6502's  X  register, 
your  programs  can  perform  such 
diverse  operations  as  formatting  a 
disk,  drawing  a  line  on  the  graphics 
screen,  fetching  a  keystroke  from 
the  keyboard,  sending  output  to  the 
printer,  or  reading  25,000  bytes 
from  a  disk  file. 

Yet,  CIO  is  invisible  to  most 
Atari  users.  For  example,  many  of 
the  capabilities  which  magazine 
and  newsletter  articles  attribute  to 


BASIC  are  not  part  of  BASIC  at  all. 
None  of  the  graphics  (including  the 
so-called  BASIC  graphics  modes)  in 
Atari  BASIC  are  actually  performed 
by  BASIC.  Instead,  BASIC  simply 
translates  the  graphics  command 
into  a  call  to  CIO.  Atari  developed 
this  system  in  1978,  and  it  wasn't 
until  the  Macintosh  appeared  that 
such  a  revolutionary  concept  was 
repeated  in  a  popular  computer. 

Generally,  you  have  to  become 
a  machine  language  programmer  to 
appreciate  and  use  all  the  features 
of  CIO.  So  why  read  any  of  this, 
then?  Because  calls  to  CIO  can't 
perform  every  input/output  task 
possible  on  Atari  computers.  What 
can't  CIO  do?  First,  let's  take  a 
glance  at  what  it  can  do. 

Calling  CIO 

When  CIO  is  called  by  a  program,  it 
expects  the  X  register  to  contain  a 
pointer  to  an  Input/Output  Control 
Block  (lOCB).  lOCBs  are  blocks  of 
memory  16  bytes  long  which  con- 
trol CIO  functions.  The  pointer  val- 
ue for  the  X  register  is  easily 
calculated — it's  actually  the  BASIC 
file  number  (as  in  OPEN  #1,4, 
0,"K:")  multiplied  times  16,  be- 
cause there  are  16  bytes  per  lOCB. 
One  of  the  bytes  within  the  lOCB 
then  tells  CIO  what  function  the 
program  is  requesting. 

There  are  seven  fundamental 
functions  available:  OPEN, 
CLOSE,  STATUS,  PRINT,  INPUT, 
Block  PUT,  and  Block  GET.  In  addi- 
tion, there  are  some  extended  func- 
tions. BASIC  programmers  are 
familiar  with  these  because  of  the 
XIO  statement,  which  allows  you  to 
call  the  functions  from  BASIC.  But 
several  other  BASIC  statements  (in- 
cluding NOTE,  POINT,  DRAWTO, 
and  LOCATE)  access  the  CIO  ex- 
tended functions,  too. 

After  CIO  examines  the  lOCB 
and  determines  which  function  is 
being  requested,  it  decides  which 


device  (keyboard,  disk,  screen,  etc.) 
should  service  the  request.  Then  it 
calls  an  appropriate  routine  within 
the  device  driver  for  that  device. 
(For  example,  the  Disk  Operating 
System — or  more  properly,  the  File 
Management  System — is  the  de- 
vice driver  for  the  disk  drive.)  If  the 
request  is  for  an  extended  function, 
it  is  passed  on  unchanged  to  the 
device  driver. 

Well,  with  256  possible  com- 
mand values,  you  would  think  that 
there  isn't  any  request,  however  bi- 
zarre, which  couldn't  be  serviced 
via  CIO.  In  theory,  true.  In  reality, 
you  have  to  stop  adding  functions 
somewhere  or  you  run  out  of  mem- 
ory. Thus  Atari's  ClO-based  graph- 
ics have  no  function  for  drawing  a 
circle,  and  DOS  provides  no  com- 
mand to  format  a  disk  without  also 
writing  a  boot  and  directory. 

If  you  want  to  draw  a  circle, 
you  can  write  a  routine  to  calculate 
and  PLOT  points  or  change  screen 
memory  directly.  If  you  want  to 
mess  with  the  disk  drive,  though, 
you  have  to  learn  about  another 
routine  within  the  Atari  ROMs, 
Serial  Input/Output. 

The  Mysterious  SIO 

SIO — which  lets  Atari  computers 
talk  to  devices  (such  as  printers  and 
disk  drives)  which  hook  up  to  the 
serial  bus — has  acquired  an  unde- 
served aura  of  mystery.  Actually, 
though,  in  some  ways  it  is  easier  to 
call  SIO  than  it  is  to  call  CIO! 

For  example,  there  is  only  one 
SIO  "device"  and  only  one  Device 
Control  Block  (DCB).  So  even  the  X 
register  pointer  required  by  CIO 
isn't  necessary  when  calling  SIO. 
Intrigued?  I  hope  so,  because  it's 
time  to  sign  off  for  now.  But  after 
this  brief  overview,  we're  ready  for 
next  month's  column:  We'll  show 
how  to  write  a  program  to  call  SIO. 


34     COMPUTEI     August  1965 


IBM  Personal  Computing 


Donald  B.  Trivette 


New  Life  For  Aging  PCs 

This  month's  COMPUTE!  is  full  of 
new  wares  from  the  Summer  Con- 
sumer Electronics  Show.  But  most 
of  us  can't  afford  to  toss  out  the  old 
and  bring  in  the  new — at  least  not 
yearly — -so  let's  look  at  an  interest- 
ing alternative. 

One  way  to  give  new  life  to  an 
aging  PC  is  with  a  PCturbo  board 
by  Orchid  Technology  (47790  Wes- 
tinghouse  Drive,  Fremont,  CA 
94539).  PCturbo,  which  installs  in 
one  of  the  PC's  expansion  slots, 
contains  a  whole  new  computer  and 
a  whole  new  memory.  It's  like  hav- 
ing a  new  computer  inside  an  old 
computer.  The  old  computer  is  the 
original  IBM  PC  with  its  memory 
and  Intel  8088  microprocessor.  The 
new  computer  is  completely  con- 
tained on  the  PCturbo  board;  it  has 
an  Intel  80186  microprocessor  with 
up  to  640K  RAM. 

You  don't  lose  your  old  PC  in 
the  bargain- — a  PC  with  PCturbo  is 
like  two  separate  computers.  In  PC 
mode,  the  computer  runs  just  as  it 
always  did.  But  in  PCturbo  mode, 
the  machine  zips  through  most  pro- 
grams three  to  four  times  faster. 
Two  new  DOS-like  commands — 
TURBO  and  GOPC—switch  from 
one  mode  to  another. 

The  PCturbo  board  executes  all 
the  usual  program  instructions,  but 
handles  input/output  in  a  special 
way.  For  example,  when  a  disk  op- 
eration generates  an  input/output 
interrupt,  the  PCturbo's  80186  pro- 
cessor passes  the  I/O  task  along  to 
the  slower  8088  processor.  That 
means  the  80186  can  run  a  program 
at  full  speed  without  stopping  to 
process  time-consuming  interrup- 
tions from  the  keyboard,  screen, 
disk,  and  printer. 

Nor  is  the  PC's  original  memo- 
ry left  idle.  Software  supplied  with 
PCturbo  allows  that  memory  to  be 
used  as  one  or  more  electronic 
RAM  disks  and  as  a  disk  cache  (pro- 


nounced like  "cash").  Disk  caching 
has  been  around  for  years  as  a  way 
to  speed  up  I/O  on  mainframe 
computers.  No  matter  how  fast  disk 
drives  are,  memory  is  three  to  four 
times  faster.  The  PCturbo  disk- 
caching  software  automatically 
moves  blocks  of  data  (called  sec- 
tors) from  the  disk  to  the  cache  (the 
old  PC  memory)  so  the  data  will  be 
there  when  needed.  In  fact,  the 
caching  software  anticipates  re- 
quests: It  moves  the  next  disk  sector 
into  memory  as  well.  All  this  is 
completely  transparent  to  the  appli- 
cation software — it  still  thinks  it's 
reading  and  writing  data  on  a  flop 
py  disk. 

A  Dramatic  Speed-Up 

How  well  does  disk-caching  work? 
To  find  out,  I  plugged  a  PCturbo 
board  into  my  three-year-old  320K 
PC  and  invite.d  over  a  friend. 

Henry  and  his  wife  own  an 
interior  design  firm;  they  use  their 
PC  with  Lotus  1-2-3  to  keep  track  of 
chairs,  tables,  wallpaper,  fabrics, 
taxes,  and  all  the  other  charges  for  a 
job.  I  had  heard  Henry  complaining 
about  the  spreadsheet  for  a  modest 
residence  he  is  doing  for  a  surgeon. 
The  spreadsheet  is  28  columns 
wide  by  389  rows  deep — about 
170,000  opulent  bytes.  When 
something  is  added — say  a  Ming 
vase — it  takes  the  program  15.5 
seconds  to  recalculate.  (We  all 
should  have  to  spend  a  half-million 
dollars  at  four  items  per  minute!) 
With  the  computer  in  PCturbo 
mode,  the  recalculations  were  cut  to 
six  seconds.  That's  a  speed  increase 
of  250  percent  (or  six  more  items  per 
minute). 

My  own  problems  more  often 
involve  checking  the  spelling  in  a 
manuscript  rather  than  spending 
money  more  rapidly.  I  recalled  a 
2,049-word  article  (it  took  the  PC 
three  seconds  to  count  the  number 
of  words;  PCturbo,  one  second)  and 
set  Word  Proof,  the  IBM  spelling 


checker,  to  work.  In  41  seconds, 
PCturbo  verified  that  the  article 
had  no  errors;  in  regular  PC  mode, 
the  job  took  107  seconds.  To  speed 
things  up  even  more,  I  moved  Word 
Proof's  125,000-word  dictionary 
from  a  floppy  disk  to  an  electronic 
RAM  disk  created  in  the  regular  PC 
memory.  PCturbo  polished  off  all 
2,049  words  in  18  seconds  (almost 
114  words  per  second);  the  PC  by 
itself  took  77  seconds — more  than 
four  times  longer. 

And  how  much  does  it  cost  to 
find  spelling  errors  faster  than 
Superman?  The  invoice  from  Or- 
chid Technology  is  $747  for  the 
PCturbo  board  with  256K  of  mem- 
ory, and  $375  for  the  optional  384K 
memory  module  to  reach  a  total 
640K.  The  fully  loaded  board— 
PCturbo  with  640K— costs  $1,122. 
Not  bad  for  an  accessory  that  al- 
most turns  a  three-year-old  PC  into 
a  PC  AT. 

Almost,  that  is,  because  the  PC 
won't  do  a  few  things  in  PCturbo 
mode.  IBM  BASIC  is  an  IBM  propri- 
etary product  built  into  a  chip  on 
the  PC's  main  circuit  board;  it's  not 
available  to  PCturbo,  so  you  must 
switch  to  PC  mode  to  run  BASIC  or 
BASICA.  But  compiled  BASIC  runs 
just  fine  with  PCturbo.  Also,  the 
PCturbo  board  I  tested  wouldn't 
run  communications  programs  (it 
couldn't  find  the  modem).  How- 
ever, Orchid  says  it  has  a  solution 
to  that  in  the  works.  Somehow  it's 
comforting  to  know  there's  lots  of 
life  left  in  the  old  PC. 

Odds  And  Ends 

The  second  edition  of  IBM's  Direc- 
tory of  Personally  Developed  Soft- 
ware has  been  out  for  several 
months,  To  get  a  free  copy,  call  1- 
800-IBM-PCSW  (a.k.a.  1-800-426- 
7279).  The  new  directory  lists  58 
software  products  ranging  in  price 
from  $15  to  $150,  although  most 
cost  about  $20.  There  are  some  real 
bargains  here.  © 


August  1 986     COMPUTB      35 


S  Programming  the  Tl 


C.  Regena 


Trivia  Quiz 

There  has  been  quite  a  big  fuss 
about  the  trivia-type  question  and 
answer  games — Trivial  Pursuit  and 
the  various  takeoffs.  I'm  certain 
that  you've  also  seen  ads  for  com- 
puter versions  of  these  board 
games.  Have  you  ever  wanted  to 
buy  one?  Wait!  Write  your  own. 
This  month's  program,  "Trivia 
Quiz,"  gives  you  the  basic  structure 
for  a  question  and  answer  game. 

The  main  part  of  either  the 
board  games  or  the  computer  ver- 
sions is  the  bank  of  queshons.  Of 
course,  we  can't  publish  a  program 
with  questions  already  included  be- 
cause it  would  take  up  the  whole 
magazine.  To  make  your  own 
game,  you  must  invent  your  own 
questions.  Teachers  can  use  this 
program  for  a  basic  essay-type  quiz 
on  any  subject,  and  families  can 
think  up  questions  that  appeal  to 
their  interests. 

The  computer  is  used  to  shuffle 
the  questions,  or  to  randomly 
choose  one  question  at  a  time  and 
give  its  corresponding  answer. 
Once  a  question  comes  up,  it  is  not 
used  again. 

I've  previously  published  pro- 
grams for  a  matching  quiz  and  a 
multiple-choice  quiz.  This  program 
creates  a  fill-in-the-answer  or  essay 
quiz.  You  can  even  print  out  copies 
of  tests  that  have  the  questions  in  a 
different  order  for  each  person. 

Modifying  Tlie  Program 

In  each  of  the  program's  DATA 
statements,  first  write  a  question, 
then  type  a  comma,  then  put  the 
answer.  Remember  to  adjust  the 
spacing  so  it  looks  nice  on  the 
screen  (no  words  split  across  screen 
boundaries).  If  you  need  commas 
within  the  question  or  the  answer, 
you'll  need  to  use  quotes.  Just  to 
give  you  an  idea,  the  sample  pro- 
gram contains  questions  from  nurs- 
ery rhymes  and  fairy  tales. 


Adjust  the  DIMension  state- 
ment for  the  number  of  questions 
you  put  in  your  DATA  statements. 
For  an  example,  I've  used  only  20 
questions.  You'll  probably  want 
many  more  for  a  trivia  quiz.  Also 
define  N  in  line  120  for  the  number 
of  possible  questions. 

After  the  computer  chooses 
and  prints  a  question,  the  player 
inputs  the  answer.  The  computer 
then  prints  the  correct  answer.  The 
computer  does  not  keep  score, 
however,  because  you  may  want  to 
accept  several  forms  of  the  answer. 
For  instance,  you  could  accept  the 
answer  to  the  question  of  what  Lit- 
tle Miss  Muffet  ate  as  "curds  and 
whey,"  "her  curds  and  whey,"or 
even  "cottage  cheese" — but  you 
would  not  accept  "porridge." 

Trivia  Quiz  simply  asks  the 
questions,  so  any  number  of  people 
can  play.  You  may  want  to  expand 
the  program  to  ask  questions  of 
each  player  in  turn,  to  add  scoring, 
or  to  make  a  more  complex  game. 
Of  course,  you  can  add  graphics 
and  sound,  too. 

If  you  wish  to  save  typing  ef- 
fort, send  a  blank  cassette  or  disk,  a 
stamped,  self-addressed  mailer, 
and  $3  to: 

C.  Regena 
P.O.  Box  1502 
Cedar  City,  UT  84720 

Please  be  sure  to  specify  that  you 
want  the  TI  version  of  Trivia 
Quiz. 

Answers  To  Reader 
Questions 

I  cover  TI  BASIC  exclusively  in  this 
column  because  most  COMPUTE! 
readers  have  console  BASIC  only. 
For  other  programming  languages 
and  hardware  information,  a  good 
newsletter  is  published  by  the 
99'ers  User  Group  Association, 
3535  South  H  Street,  #93,  Bakers- 
field,  CA  93304.  This  is  a  nonprofit 
organization   that   communicates 


with  hundreds  of  local  user  groups. 

User  groups  are  still  going 
strong  and  are  your  best  source  of 
information  and  help.  Many  pub- 
lish excellent  newsletters  (sorry,  too 
numerous  to  mention  here,  and  I 
wouldn't  want  to  slight  anyone). 

New  software  is  still  being  pro- 
duced for  the  TI — I  guess  because 
there  are  over  two  million  TIs  out 
there.  Most  new  programs  are  en- 
tertainment and  educational  titles. 
And  yes,  the  Extended  BASIC  mod- 
ule remains  available. 

Hardware  also  is  abundant. 
There  are  separate  units  for  each 
peripheral,  which  saves  you  money 
if  you  need  only  one  item.  There 
are  also  combinations.  One  attrac- 
tive unit  I've  used  is  CorComp's 
expansion  unit  that  contains  an 
RS-232  interface,  32K  memory  ex- 
pansion, and  a  disk  controller,  all  in 
a  box  about  six  inches  wide  that 
connects  to  the  side  of  the  console. 
It  works  just  like  the  TI  Peripheral 
Expansion  Box  but  without  the  bulk 
and  the  noisy  fan.  My  only  com- 
plaint is  that  the  disk  drive  connec- 
tor isn't  the  same  as  the  TI  disk 
drive  ribbon  cable,  but  I  understand 
Radio  Shack  has  the  necessary 
connections. 

Next  month  I'll  discuss  how  to 
use  peripherals  in  your  programming. 


Trivia  Quiz 

lee 

REM   TRIVIA  QUIZ 

110 

DIM  S% (20> , A» (20) 

120 

N=20 

130 

CALL  CLEftR 

140 

PRINT  TAB (8) ; "TRIVIA  DU 

IZ" 

150 

PRINT  ::"A  QUESTION  WIL 

L  BE  SHOWN. " 

160 

PRINT  :t"TYPE  THE  ANSWE 

R  (WITHOUT" 

170 

PRINT  : "COMMAS)  THE^  PR 

ESS  <ENTER>. " 

1S0 

PRINT  ::"THE  CORRECT  AN 

SWER  IS  SHOWN. " 

190 

PRINT  5 : "PRESS  THE  SPAC 

E  BAR  TO" 

200 

PRINT  : "CONTINUE. " 

210 

FOR  C=l  TO  N 

220 

READ  S»iC) , A* (C) 

230 

NEXT  C 

36     COMPUTE!     August  1 985 


240 

250 
260 
270 
280 
290 
300 
310 
320 
330 
340 
350 
Zb0 
370 
330 
390 
400 
410 

420 


430 


440 


450 


460 


480 

490 
500 

510 

520 
530 
540 
550 

560 
570 
580 
590 
600 
610 
620 


PRINT  ::: "PRESS  fiNV  KEY 

TD  START.  '■ 
CftLL  KEY(0,K,S> 
IF  S< 1  THEN  250 
FDR  C=l  TO  N 
CALL  CLEAR 
RANDOMIZE 
R=INT (N*RND) +1 
IF  S»<R)=""  THEN  300 
PRINT  SS (R) : : 
CALL  SOUND < 100, 1497, 2) 
INPUT  B« 
PRINT  !fl«(R) 
CALL  KEY{0,K,S) 
IF  K032  THEN  360 
S»  (R)  =■■  ■' 
NEXT  C 
CALL  CLEAR 
REM   PUT  QUESTIONS  HERE 


DATA  WH 
TENS?, T 
K I TTENS 
DATA  WH 

MEN  IN 
CHER,  T 
NDLESTI 
DATA  WH 
LE  ROCK 
8LDW5 
DATA  WH 
JILH6 
PAIL  OF 
DATA  WH 

TAILS? 
FE 

DATA  HO 
DL  DID 
AVE?, TH 
DATA  WH 
REE  BEA 
CKS 
DATA  WH 
PPLE7, S 
DATA  WH 
UPPER?, 
KER 
DATA  WH 

PIBS  U 
R  HOUSE 
S,  BRIC 
DATA  WH 
HAIR  TO 
E  PRINC 
DATA  WH 

IN  HIS 
MAS  PIE 
DATA  WH 
SS  MUFF 
D  WHEY 
DATA  WH 

RIDINS 
DING  TD 
DMDTHER 
DATA  WH 

SPRAT< 
T 

DATA  WH 
D  AWAY 
E  PIPER 
DATA  WH 
{11  SPA 
JACK 
DATA  WH 

STOCKI 
HN 
DATA  WH 

GLASSC 
?, CINDE 
DATA  WH 
DID  ONE 
GGIES  H 
END 


O  LOST  THEIR  MIT 
HE  THREE  LITTLE 

0  WERE  THE  THREE 
A  TUB?, "THE  BUT 
HE  BAKER,  THE  CA 
CK  MAKER" 
EN  WILL  THE  CRAD 
?,WHEN  THE  WIND 

AT  DID  JACK  AND 
SPACES>FETCH?, A 

WATER 
0  CUT  OFF  MICE'S 
, THE  FARMER'S  WI 

W  MAY  BAGS  OF  WO 

THEBLACK  SHEEP  H 

REE 

0  VISITED  THE  TH 

RS' HDME?, BDLDILQ 

O  CHOKED  ON  AN  A 
NOW  WHITE 
O  SANG  FOR  HIS  S 
LITTLE  TOMMY  TUC 


AT  DID  THE  THREE 

SE  TO  BUILD  THEI 

S?, "STRAW,   STICK 

KS" 

O  USED  HER  LONG 

{3  SPACES>SEE  TH 

E?, RAPUNZEL 

AT  DID  JACK  FIND 

{3  SPACES>CHRIST 

?,A  PLUM 

AT  DID  LITTLE  MI 

ET  EAT?, CURDS  AN 

D  WAS  LITTLE  RED 

{3  SPACES>HOOD  G 

VISIT?, HER  GRAN 

AT  COULDN'T  JACK 
4  SPACES>EAT?, FA 

0  STOLE  A  PIG  AN 
DIDRUN?, "TOM,  TH 

S  SON" 
0  JUMPED  OVER  A 
CESJCANDLESTICK?, 

O  SLEPT  WITH  HIS 
NGSDN?,MY  SON  JO 

DSE  FOOT  FIT  THE 

4  SPACESJSLIPPER 

RELLA 

AT  KIND  OF  MEAT 

OFTHE  LITTLE  PI 
AVE?, ROAST  BEEF 


CAPUTE! 


Tl  Webster  Dines  Out 

In  line  480  of  this  game  program 
from  the  June  issue  (Program  6,  p. 
57),  the  DISPLAY  AT(3,22)  should 
be  DISPLAY  AT(23,22).  Reader 
Andrew  Sonon  supplied  this  cor- 
rection, which  moves  the  score  in- 
dication to  its  proper  place  on  the 
screen. 

Apple  MLX  Error  Messages 

Although  there  are  no  errors  in  the 
"Apple  MLX"  listing  from  the  June 
issue  (p.  114),  a  number  of  readers 
have  encountered  DISK  ERROR 
messages  at  unusual  times.  During 
normal  operation  of  the  program, 
the  only  errors  that  should  occur 
are  ones  involving  disk  access;  line 
100  traps  these  errors.  However,  a 
side  effect  of  this  error  trapping  is 
that  typing  mistakes  you  make 
while  entering  MLX  can  also  pro- 
duce the  message  in  line  610.  Thus, 
if  MLX  gives  you  a  DISK  ERROR 
message  when  you  are  not  access- 
ing the  disk,  you  need  to  check  for  a 
typing  mistake  in  the  MLX  pro- 
gram. Lines  330-340  are  a  common 
problem  area.  Make  sure  you  have 
not  confused  the  letter  O  (used  in 
the  variable  names  0$  and  O  in 
those  lines)  with  the  number  zero, 
which  also  appears  in  line  340.  In 
COMPUTERS  listings,  a  zero  always 
has  a  diagonal  slash  through  it. 

Commodore  Disk  Editor 

The  POKE  1024,  PEEK(254)  in  line 
260  of  this  disk  utility  program 
from  the  June  issue  (p.  98)  prevents 
you  from  changing  the  value  of  the 
first  byte  in  a  sector.  This  is  the 
track  number  for  the  next  sector  in 
the  file,  so  you  may  not  need  to 
change  its  value  very  often.  How- 
ever, you  can  modify  the  program 
to  allow  editing  of  the  first  byte  by 
replacing  the  GOTO  260  at  the  end 
of  line  310  with  WAIT  198,255: 
GOTO  280. 


Editing  Enhancement  For 
Softball  Statistics 

This  record-keeping  program  from 
the  July  issue  (p.  30)  works  as  pub- 
lished for  all  the  listed  computers. 
However,  the  data  input  process 
can  be  simplified  by  allowing  cor- 
rections for  each  player's  statistics. 
To  accomplish  this,  make  the  fol- 
lowing changes  to  the  general  pro- 
gram (Program  1): 

545  PRINT 

546  PRINT  "EVERYTHING  OK  (Y/N) 
7" 

547  INPUT  AS 

548  IF  AS<>"N"  AND  A$<>"Y"  THE 
N  545 

549  IF  A5="N"  THEN  420 

TI-99/4A  users  should  also  make 
the  following  additional  changes: 

548    IF    (A$<>"N")*(AS<>"Y" )    THE 
N    545 

Atari  users  should  also  make  the 
following  additional  changes: 

250  NEXT  1  SPRINT  "<:DQWN>E 
verything  DK  (Y/N)?": 
BOSUB  630: IF  A*="N"  T 
HEN  210 

255  GOSUB  460 

Mindbusters  For  Atari 
DOS  3.0 

To  use  the  Atari  version  of  this 
thinking  game  from  the  April  issue 
(p.  50)  with  DOS  3.0,  you  must 
delete  the  DIM  K(255)  in  line  5  and 
make  the  following  changes  to  line 
1: 

1  DIM  K(255);FOR  I  =  0  TO  255:  Kd)  -  0: 
NEXT  I:  GOTO  5  @ 


August  1985     COMPUTEI      37 


Reviews 


Archon  II:  Adept 


Arthur  Leyenberger 

Requirements:  Commodore  64  or  128; 
Atari  400/800  or  XL  with  at  least  48K 
RAM;  or  an  Apple  U-series  computer  with 
at  least  48K  RAM.  Ail  versions  also  re- 
quire a  disk  drive  and  a  joystick. 


In  any  entertainment  business,  whether 
it  is  movies,  books,  or  videogames, 
there  is  a  natural  tendency  to  produce 
sequels  to  existing  hits.  Making  sequels 
can  be  approached  in  a  number  of 
ways.  Often  the  sequel  is  just  more  of 
the  same  thing,  such  as  Jaws  U  and  jaws 
3-D;  the  hope  is  that  there  will  be  con- 
tinued demand  for  more  of  the  same 
thing.  The  risk  in  this  approach  is  that 
people  may  eventually  grow  tired  of 
the  old  formula. 

Another  approach  is  to  use  the 
same  basic  theme  of  the  original,  but 
add  something  new  or  better  to  the 
sequel — as  in  the  successful  Star  Wars 
and  Star  Trek  films.  This  is  also  the  case 
with  Ardwn  II:  Adept,  a  new  game  from 
Free  Fall  Associates,  published  by  Elec- 
tronic Arts. 

Adept  was  designed  to  be  a  game 
that  has  the  same  mixture  of  strategy, 
action,  and  play  mechanics  as  the  origi- 
nal Archon.  But  it  is  sufficiently  differ- 
ent to  please  both  new  players  and 
long-time  Archon  devotees. 

Casting  Magic  Spells 

Adept  is  basically  a  game  of  magic,  fo- 
cusing on  energy  and  resource  manage- 
ment. Unlike  Archon,  it  allows  people  of 
different  skill  levels  to  compete  more 
equally.  The  combination  of  strategic 
board  play  and  individual  combat 
means  that  people  who  don't  have  fan- 
tastic reflexes  have  a  reasonable  chance 
of  winning. 

Each  side  starts  with  four  Adepts, 
similar  to  the  Wizard  and  the  Sorceress 
pieces  in  Archon.  The  game  begins  with 
one  Adept  on  each  of  the  four  elements: 
Earth,  Water,  Air,  and  Fire.  The  ele- 
ments are  represented  by  colored  bands 
on  the  screen.  Your  pieces  are  shown 


vertically  on  each  side  of  the  screen, 
with  the  more  powerful,  flexible  pieces 
at  the  top. 

The  more  powerful  pieces  require 
more  energy  to  manipulate.  Choosing 
the  beginner  level  gives  you  the  most 
energy  while  choosing  the  advanced 
level  gives  you  the  least.  The  play  level 
also  affects  the  speed  of  the  pieces  in 
combat.  Each  piece  can  cast  spells,  and 
every  spell  costs  magical  energy.  You 
can  cast  as  many  spells  as  you  want 
with  any  piece  as  long  as  you  can  afford 
it.  To  gain  magical  energy,  you  must 
occupy  "power  points."  If  you  occupy 
al!  of  the  power  points,  you  win  the 
game. 

You  shape  your  magical  army  de- 
pending on  such  factors  as  your  skill 
with  a  particular  piece,  a  certain  strate- 
gy, or  the  pieces  you  like.  Each  side  has 
four  different  elemental  pieces  that  can 
be  called  upon.  They  are  strongest  in 
their  own  element  but  can  be  played  in 
any  element,  Some  of  the  pieces  are 
common  to  both  sides,  while  others  are 
unique. 

When  you  choose  a  piece,  you  are 
shown  the  amount  of  energy  you  cur- 
rently have  as  well  as  how  much  ener- 
gy it  costs  to  use  that  piece  or  cast  a 
spell.  Although  many  of  the  spells  are 
familiar  to  the  experienced  Archon  play- 
er, some  have  new  twists.  For  example, 
the  Imprison  spell  lets  you  trap  an  ene- 
my piece  as  long  as  you  have  the  ener- 
gy to  pay  for  it.  Casting  and  main- 
taining this  spell  costs  energy  during 
every  turn,  so  imprisoning  everyone  in 
sight  would  soon  drain  your  resources 
and  lose  you  the  game. 

Apocalypse  Now 

All  of  the  spells  can  be  cast  repeatedly, 
with  one  exception:  the  Apocalypse. 
You  can  cast  this  spell  only  once,  since 
it  begins  a  battle  that  ends  the  game.  It 
is  a  one-on-one,  winner-take-all  battle 
that  is  shaped  by  your  strategic  posi- 
tion: the  amount  of  energy,  number  of 
pieces,  and  surviving  Adepts  you  have 
left.  The  result  can  be  either  a  well- 
matched  or  very  one-sided  battle. 

This  go-for-broke  spell  typically  is 
cast  in  two  situations.  One  is  if  you  are 
way  ahead  and,  for  some  reason,  are 
having  trouble  occupying  the  last  power 


point.  The  other  situation  is  when 
you're  in  danger  of  losing  the  game  and 
have  no  other  way  out.  Since  the  Apoc- 
alypse spell  is  expensive,  casting  it  in  a 
weak  position  weakens  you  still  more. 

Adept  contains  a  wider  variety  of 
creatures  than  are  found  in  Archon. 
Each  piece  has  a  unique  weapon  and 
performs  best  in  a  certain  element.  For 
example,  the  Juggernaut  is  best  suited 
to  Air  and  uses  itself  as  a  missile.  When 
fired,  it  glows  and  charges  across  the 
screen.  While  in  motion,  it  is  invulnera- 
ble and  destroys  anything  in  its  path. 
Using  the  Juggernaut  in  the  water, 
however,  significantly  slows  it  down 
and  makes  it  more  vulnerable  to  attack. 

In  1983,  Archon  ranked  at  the  top 
of  almost  every  gamer's  list.  It  still  be- 
longs in  the  videogame  hall  of  fame. 
Archon  H:  Adept  is  even  better  than 
Archon  and  should  rank  even  higher 
with  experienced  Archon  devotees  as 
well  as  with  players  new  to  the  world  of 
magic  and  strategy. 

Archon  II:Adept 
Electronic  Arts 
2755  Campus  Drive 
San  Mateo,  CA  94403 
S3J  (Commodore  &  Atari) 
$40  (Apple) 


WordPerfect 
For  IBM 

Richard  Mansfield,  Senior  Editor 

Recjuireinents:  IBM  PC  or  compatible 
with  at  least  192K  of  RAM,  two  disk 
drives,  DOS  2.0  or  higher,  and  a  printer. 
Not  compatible  with  the  PCjr. 


This  is  an  excellent  word  processor.  In 
addition  to  performing  all  the  usual 
tasks  with  speed  and  efficiency,  Word- 
Perfect includes  many  features  which 
are  either  rare  or  unique. 

Perhaps  its  best  single  feature  is 
that  it  gives  you  a  blank  screen  to  write 
on — no  distractions  from  control  codes, 
command  lines,  or  other  clutter.  Just  a 
couple  of  unobtrusive  numbers  in  the 
lower-right  comer  to  identify  the  col- 


38     COMPUTEI      August  1985 


DISK  WORLDI 
is  pleased  to  announce  the 
/oM^esf-p rices  ever  on  brand 

name  diskettes! 

YouVe  seen  ads  for  lower  priced  diskettes. 

But  did  vou  evef  notice  that  ttiey  usuaillv  cSon't  carry  or  list  a  tjrand  name.  There's  a  reason 
tor  that:  there  is  no  brand  name  to  be  listed,  since  these  low-cosl  "oeneric"  diskettes  are  politely 
called  qarbatje  within  the  diskette  industry 

One  or  two  individuals  buy  reject  product  from  lower-quality  manufacturers  and  put  it  out  in 
the  market  place  without  a  label.  ..and  without  any  meanihQful  guaranty  that  you're  qettino  qood 
product. 

But  not  at  DISK  WORLD!. 

We  deal  only  with  branded  merchandl5e...with  diskettes  made  by  people  who  are  proud  to 
have  their  name  known. 


3M: 


Almost  every  diskette  you  buy  has  a  little  3M  In  It.  3M  manufactures  more  blank 

diskette  media  than  anyone  else...and  probatily  produces  more  computer  meOia  in  atl 
forms  than  any  olher  manufacturer.  This  is  lactorv-  fresh  2M  product,  boxed  in  10's, 
reinforceO  hubs,  user  ID  latwls,  write  -  protect  tabs  and  a  100%  LIFETIME 
WARRANTY. 

5.25"  SSDD  w/  FREE  Flip  'n  File  15 S  1 .42  ea. 

5.25-DSDDw/  FREE  Flip  'n  File  15 5  1.74  ea. 

(Above  FHEE  oflers  subject  to  limited  availaDility.) 

5.25- SSDD-9St  R |2.06ea. 

5.25-  DSDD-96TPt $  257  ea. 

5.25"  DSOD-HD  for  IBM  PC/AT $  3.93  ea 

3.50'  SSDD-135TPI  for  Mac  and  Others $  2.86  ea. 


BASF: 


Exceptional  value  from  one  of  the  world's  largest  companies.  Except  where 


indicated,  BASF  diskettes  are  packaqed  in  cardboard  boxes  of  10,  reinforrad  hubs  Tvvet 
sleeves,  user  ID  labels  and  write  •  protect  labels.  Of  course,  there's  a  100%  LIFETIME 
WARRANTY  Oh  all  BASF  product. 

5.25"  SSDD „ $1.14  ea. 

S.ffi-DSDD .5  1.31  ea 

525  DS[>D-HD  for  IBM  POAT $  3.14  ea. 

525  SSDD  in  Bulk  Padts  of  SO $    .89  ea. 

525"  DSDD  in  Bulk  Packs  of  50 „ _.„ $  l  .1 2  ea 

5.25"  "FLIPPY"  diskettes  ub  Bulk  Packs  of  50 $  1 .20  ea. 

a  W  R.i^nn-irW  IJIir.RnPI  nPPV  fnr  Morintnsh  nthOfS  S  ?  ;uoa 

A\  1  n/\l\/\«The   diskette  you've  use<J  hundreds  of  times... without  knowing  it. 

ATHANA  edalizes  in  producing  top-o1-the-line  diskettes  for  software  ea.mctnufacturers  . 
Cams  pies  with  Tyvec  sleeves,  user  ID  labels,  reinforced  hubs  and  write-protect  tabs. 
100%   LlFETIf<1E  WARRANtY. 

525-  iSSDDn  Sulk  Racks  of  50 _...- .$  57 

525  DSDD  in  Bulk  PaO(S  Of  50 .$  1 .01  ea 


NASHUA 


One  of  the  largest  diskette  manufacturers  in  the  nation and  the  leader  ir 

riflid  disk  packs  for  mainframes.  .  Of  course  there's  a  100%  LIFETIME  WARRANTY 
on  all  NASHUA  oroducts.Tyves  sleeves,  reinforced  hubs,  user  ID  labels  and  write  - 

grotect  tabs  are  inclluded. 
25' SSDD  Bulk  Pack  in  SO's 4  57  ea. 

525  OSDD  Bulk  Pack  in  SQ's „ 5 1  -07  ea 

IVl  C I VIVi/ 11 C  ^  ■    Is  it  real  or  Is  it  Memorex?  Ifs  Memorex,  packaged  as  shown, 

complete  with  Tvvec  sleeves,  reinforced  hubs,  user  ID  labels  and  write  -  protect  tabs.  And 
,.of  course ^a  100%  LIFETI^flE   WARRANTV> 

5.25"  SSDD  in  boxes  of  10 $  1.27  ea. 

5.25"  DSDD  in  boxes  of  10 , S  1.69  ea. 

5.25'  SSDD  "FLIPPY"  diskettes   In  boxes  of  10 S  1.59  ea. 

5.25"  DSDD-HD  lor  IBM  PC/AT  in  boxes  of  10 $  3,36  ea. 

nsrV  !Wnn-1S."iTPI    MIP.ROFI  OPPY     in   bnyan'nf  in  S   9  i7  aa 

wwIM  T  iiThe  company  that  invented  the  3.50"  drive.. .and  licenses  it  to  every  other 

manufacturer.  Boxed  in  10's  with  user  ID  latrels.  (There's  no  need    for  wrile-profect  tabs 
or  Tyvec  sleeves. 

350''  SSDD  lor  me  fvladntosh 4  255  ea 

5.25"  DSOD  for  Data  General/One  and  HP .1 3.89  ea 

_,___.,_  DISKETTE   STORAGE:      ^ 

R    B  B  O  N  S  '  Amaray  50 ^  9.69  ea.  +  $  3.00  Shpnq. 

c.,,„„  «jv -7nmn     *  n  cc  „„  Amaray  30 S9.22ea„ +$2.00Shpn(j. 

F^^m  w^FX  1nn-|A^^^  tf  Diskette 70 1 9,95.  +  i 3  00  Shpnfi. 

oSidTla'wfSo^""!  1-.S1  II-  '^'^^  KaOdies...!    1 .55 ea  +  .25  Shpr«. 

Okidata  Micro84....S  3.73  ea. 

ADd  .25  each  ribbon  for  shono. 

Ordering  l  N  ST  R  U  CTI  O  N  S  :  Add  $  3.00  shipping  per  1 0O  diskettes  or 
fraclion  Ihereof.  All  other  itenis,  add  shippinq  as  shown.  VISA,  MASTERCARD  AND  PREPAID  orders 
accepted  .  COO  orders,  add  $  5.00  Special  Handlinn  fee.  APO,  FPO,  HI,  AK  and  PR  orders,  add  5% 
10  cover  Parcel  Post  shipping.  No  foreign  orders.  Hi,  residents,  add  7%  sales  tax.lVllNIMUM  6HDER:  $ 
35.00  or  30  diskettes. 

DISK  WORLD!,  Inc.  TOLL  FHEE:  1 -800-621 -68Z7 

{In  Illinois  1-312-256-7140)  623  Green  Bay  Hd.  Wilmeflo  ,  Illinois  60091 


HOWTO 
TURN  YOUR 
PERSONAL 
COMPUTER 
INTO  YOUR 
PERSONAL 


Here's  how  to  make  the 
investment  in  your  personal 
computer  really  pay  off. 

Witti  SPECTRUM,'"  the 
new  electronic  home  bank- 
ing and  information  system 
from  The  Chase  Manhattan 
Bank,  N.A,  Teamed  up  with 
your  PC,  SPECTRUM  is  your 
direct  link  to  Chase.  And  the 
start  of  a  better  way  to 
manage  your  money  and 
your  time. 

A  push  of  a  button  lets 
you  pay  bills  electronically 
anywhere;  transfer  funds; 
keep  records,  and  more. 
Even  get  vital  financial  infor- 
mation and  trade  stocks*  at 
discount  rates, 

Right  at  home,  anytime 
-with  complete  security 
All,  including  electronic 
mail,  starting  at  just  $5  a 
month.  And  with  our  new 
subscriber  rebates  and  free 
offers,  now's  an  even  better 
time  to  get  control  of  your 
finances.  Call  today  for  your 
free  demo  diskette. 


CALL  TOLL  FREE 

1-800-522-7766 


o 


0  19B5  The  Chase  Manhattan  Corpofalron-'Stocks  are  traded 
through  Rose  &  Company,  a  Chase  affiliate. 

August  1985     COMPUTEI      39 


umn,  line,  and  page.  You  can  call  up  a 
screen  with  control  codes,  but  when 
you're  writing,  what  you  see  is  what 
you  get;  Underlined  passages  are  un- 
derlined, bold  is  bold,  indenting  looks 
like  it  will  on  paper. 

The  spelling  checker  is  another  ex- 
traordinary feature;  it's  fast  and  effec- 
tively organized.  The  dictionary  comes 
with  100,000  words  (more  than  most 
paperback  dictionaries),  is  easily  ex- 
panded, stunningly  quick,  and  simple 
to  use.  It  even  looks  up  words  phoneti- 
cally: If  you  type  komitty  it  will  look  up 
committee  for  you.  It  checks  for  double 
words  {such  as  "Paris  in  the  the 
spring")  and  gives  a  word  count  as  well. 

If  there  are  things  you  do  repeated- 
ly, you  can  create  macros,  little  pro- 
grams that  control  the  word  processor. 
Then,  at  the  touch  of  a  single  key,  you 
can  type  in  a  frequently  used  address, 
save  the  file,  search  for  another  file,  etc. 
You  can  also  create  two  screens  and 
switch  between  them,  and  instruct  the 


word  processor  to  automatically  save 
backup  copies  of  your  current  work 
every  few  minutes.  And  WordPerfect 
has  a  sophisticated,  efficient  footnote 
capability. 

Sophisticated  and  efficient  are 
good  words  to  describe  this  program. 
While  it  is  easy  to  use,  it  contains  so 
many  features  and  advanced  com- 
mands that  even  the  most  demanding 
writers  should  find  what  they  need. 
Statistical  typing,  math  calculation, 
automated  outline  numbering,  auto- 
mated compilation  of  tables  of  con- 
tents— the  list  goes  on.  If  you  need 
some  arcane  function,  you're  likely  to 
find  it  in  WordPerfect.  If  you  simply 
need  a  powerful,  sensible  writing  ma- 
chine, you  owe  it  to  yourself  to  consider 
this  fine  tool. 

WordPerfect 

SSJ  Software 

325  North  Stale  Street 

Orem.  UT  S4057 

$495 


Adventures  In  Narnia 

For   Apple    And    64         C   Regena 


Requirements:  Commodore  64  with  a  disk 
drive;  or  an  Apple  U-series  computer  with 
at  least  48K  RAM  and  a  disk  drive. 


Adventures  in  Narnia  is  an  adventure 
game  based  on  the  book  The  Chronicles 
of  Narnia  by  C.S.  Lewis.  When  we  first 
opened  the  package,  my  son  exclaimed, 
"Hey,  I've  read  that  book!"  Inside  is  a 
paperback  entitled  The  lion,  the  Witch 
and  the  Wardrobe,  a  popular  story  in  the 
Chronicles  series  which  was  the  inspi- 
ration for  Adventures  in  Narnia.  The 
characters  in  the  game  are  the  same  as 
those  in  the  book,  You  don't  have  to 
read  the  book  to  play  the  game,  but  if 
you  play  the  game  and  enjoy  it,  you'll 
probably  want  to  read  the  book. 

Adventures  in  Narnia  is  actually  a 
combination  adventure,  arcade,  and 
board  game.  It  even  comes  with  a  deck 
of  game  cards  and  a  pair  of  dice.  High- 
resolution  computer  graphics  replace 
the  traditional  board,  but  sometimes 
during  the  arcade  action  you  bump  into 
something  that  requires  you  to  roll  the 
dice  or  choose  a  card.  Adventures  in 
Narnia  was  designed  to  use  the  com- 
puter, but  still  resemble  a  board  game 
and  bring  human  interaction  into  play. 
As  a  result,  the  game  is  not  always 
machine-controlled.  Its  authors  point 
out  that  the  computer  waits  while  you 
"think,  discuss,  decide."  You  can  "stra- 
tegize  and  argue  (without  penalty)  in 
the  middle  of  the  game,  allowing  the 
fun  and  humor  of  dialogue  that  is  miss- 
ing in  normal  videogames," 


Other  adventures  are  available  in 
this  series  as  well — such  as  Dawn 
Treader,  based  on  the  story  The  Voi/age 
of  the  "Dawn  Treader." 

Dodging  Evil  Dwarfs 

The  game  actually  is  a  two-part  adven- 
ture with  two  different  arcade  screens. 
In  the  first  adventure,  you  start  out  in 
the  wardrobe  and  try  to  gain  points  and 
strength.  In  the  second  adventure,  you 
use  the  strength  to  reach  a  character 
called  Asian  the  Lion. 

You  start  the  game  by  shuffling  the 
cards  and  placing  them  near  the  com- 
puter. Your  player  is  at  the  right  side  of 
the  screen  among  randomly  placed 
bushes,  flowers,  and  beavers.  Evil 
dwarfs  dart  about,  and  you  have  to 
avoid  them.  Dwarfs  can  also  hide  in  the 
bushes,  so  you  don't  want  to  hit  a  bush. 
You  can  gather  flowers  to  gain  points, 
and  you  can  meet  a  friendly  beaver  to 
gain  strengths  (indicated  by  hearts  at 
the  top  of  the  screen).  The  evil  dwarfs 
patrol  Narnia  and  go  around  stomping 
on  flowers  and  beavers  to  prevent  your 
success. 

The  game  action  is  quick.  If  you  hit 
a  dwarf  (or  a  moving  bush),  you're  sent 
to  a  dwarf  battle.  The  dwarf  thinks  of  a 
random  number,  and  you  must  roll  the 
dice  to  beat  his  number.  If  you  win,  you 
get  500  points,  but  if  you  lose,  you 
sacrifice  one  strength. 

From  time  to  time,  Edmund  and 
the  Witch  appear  on  the  screen.  Your 


job  is  to  intercept  Edmund  to  prevent 
him  from  reaching  the  Witch.  The  first 
adventure  ends  if  the  Witch  captures 
Edmund,  or  if  you  get  ten  heart 
strengths,  or  if  your  time  runs  out.  Then 
the  next  adventure  starts. 

Inside  The  ice  Maze 

The  second  adventure  takes  place  in  the 
Ice  Maze  with  your  character  at  the 
lower-right  comer  of  the  screen  and 
Asian  the  Lion  at  the  upper  left.  Your 
object  is  to  get  to  Asian,  but  the  Witch 
sends  evil  crystals  through  the  maze  to 
stop  you.  If  you  get  hit  by  a  crystal, 
you're  sent  back  to  the  beginning  and 
you  lose  one  heart.  If  you  lose  all  the 
hearts  and  get  hit  again,  you  lose  the 
game. 

The  gravity  chutes  are  another 
hazard.  Snow  is  falling  inside  these 
chutes,  and  if  you  step  into  one,  you'll 
tumble  to  the  bottom  and  find  yourself 
sealed  inside  the  maze. 

If  you  run  into  a  door,  you're  side- 
tracked to  a  subadventure.  Since  the 
game  action  is  fast,  you'll  probably  run 
into  some  doors  by  accident.  Once  in  a 
subadventure,  you're  directed  to  pick  a 
card.  Then  you  enter  the  card's  code 
into  the  computer.  If  your  card  is  Asian 
the  Lion,  you  automatically  gain  one 
heart  strength.  If  you  draw  a  Zap  card, 
you're  automatically  sent  back  to  the 
beginning  of  the  maze  and  you  lose  one 
strength.  Other  cards — such  as  Fenris 
Ulf  the  Wolf,  Cair  Paravel  the  Castle, 
and  Jadis  the  Witch — require  you  to  roll 
the  dice  to  determine  your  conse- 
quences, which  can  be  good  or  bad. 
After  the  subadventure,  you  return  to 
the  maze  for  another  crack  at  Asian  the 
Lion. 

You  lose  the  game  if  the  Witch 
steals  all  your  hearts  with  her  ice  crys- 
tals or  if  time  runs  out.  You  win  the 
game  by  reaching  Asian  the  Lion.  Your 
final  score  is  determined  by  the  running 
score  on  the  screen  plus  1000  points  for 
foiling  the  Witch,  1000  points  for  each 
remaining  heart,  and  the  remaining 
time  multiplied  by  10. 

The  instruction  booklet  that  comes 
with  this  package  is  very  good.  It  pre- 
sents all  aspects  of  the  game  so  you  can 
identify  each  object  and  recognize 
whether  it  is  good  or  bad.  Color  screen 
photos  are  accompanied  with  explana- 
tions for  each  possibility.  And  as  you 
play  the  game,  the  screen  instructions 
also  are  easy  to  understand. 

If  you  own  more  than  one  com- 
puter, note  that  the  Apple  and  64  ver- 
sions of  this  program  are  on  flip  sides  of 
the  same  disk. 

Adventures  in  Narnia 

Word,  Inc. 

4S00  W.  Waco  Drive 

Waco,  TX  76796 

$39.95  © 


40     COMPUTH      August  1985 


Classified 


COMPUTE!  Classified  is  a  low-cost  way  to  tell  over  350,000 
microcomputer  owners  about  your  product  or  service. 

Rates:  $25  per  line,  minimum  of  four  lines.  Any  or  all  of  the  first  line  set  in  capital 
letters  at  no  charge.  Add  $15  per  line  for  boldface  words,  or  $50  for  the  entire  ad  set 
in  boldface  (any  number  of  lines.) 

Terms:  Prepayment  is  required.  Check,  money  order,  American  Express,  Visa,  or 
MasterCard  is  accepted. 

Form:  Ads  are  subject  to  publisher's  approval  and  must  be  either  typed  or  legibly 
printed.  One  line  equals  40  letters  and  spaces  between  words.  Please  underline 
words  to  be  set  in  boldface. 

General  Information:  Advertisers  using  post  office  box  numbers  in  their  ads  must 
supply  permanent  address  and  telephone  numbers.  Orders  will  not  be  acknowl- 
edged. Ad  will  appear  in  next  available  issue  after  receipt. 

Closing:  10th  of  the  third  month  preceding  cover  date  (e.g.,  June  issue  doses  March 
10th).  Send  order  and  remittance  to:  Harry  Blair,  Classified  Manager,  COMPUTE!, 
P.O.  Box  5406,  Greensboro,  NC  27403.  To  place  an  ad  by  phone,  call  Harry  Blair  at 
(919)  275-9809. 

Notice:  COMPUTE!  Publications  cannot  be  responsible  for  offers  or  claims  of  advertisers, 
but  will  attempt  to  screen  out  misleading  or  questionable  copy. 


SOFTWARE 


TI99  LOTTO  PICKER.  Go  for  Million  Dollar 
Jackpots!  Picks  LOTTO,  Daily  Numbers,  & 
Win-4.  All  USA  Lotto  games  are  programmed 
in.  S25.  RIDGE.  170  Broadway.  #201 -C, 
NYC,  NY  1003B.  718-833-6335.  Free  Catalog. 

IBM  PCjr  OWNERS:  We  have  the  software  you 
want.  We  also  have  kits  for  easy  2nd  drive  addi- 
tion. Free  catalog.  OOWL  SOFTWARE,  1435 
Burnley  Sq,  N.,  Columbus,  OH  43229. 

PRINT  USR  -  Formatted  numeric  oulpul. 
Use  with  your  BASIC  program.  ML  speed. 
48K-f  Apple  or  C64.  Send  S9.95  lo:  MAK  Enl., 
1702  W.  Lender.  Mesa,  AZ  85202. 

AMCUP,  AN  OFllGlNAL  sailboat  racing  game, 
1  or  2  players.  C-64  w/1541  -t-  joystick. 
$14.95  ch./m.o.  BASE  for  info.  Dream  Dog 
Software,  P.O.  Box  1724,  Eugene,  OR  97440. 

"CRAPSMAN!"  The  C-64  casino  craps  tutor! 
Learn  all  bets.  Test  systems.  Up  lo  four  plavers. 
$31.95  pp,  disk.  EMCEE  SOFT  CORP,  P.o'.  Box 
402124,  Miami  Beach,  FL  33140. 

SHOPPING  LIST  PROGRAM  for  C-64  with 
1541  disk  and  printer,  it  prepares  a  shopping  list 
for  meals  you  select,  organized  by  your  market 
sections.  Send  $42  lo  4955  Woodman  Ave.,  Sher- 
man Oaks,  CA  91423 

SOFTWARE  PROTECTOR  64.  Copy  and  list 
protect  your  valuable  Basic  programs. 
Onlv  SIO  (disk  only).  Systems  Software, 
44  Rte  25A  s209,  Smithtown,  NY  11787. 

PINOCHLE  for  Commodore  64,  PC  and  PCjr. 
Real,  double-deck,  partnership  pinochle 
gives  you  a  partner  and  two  opponents! 
On  disk,  $25  postpaid.  Jim  Bernard,  S018 
Sunset  Path  Ct.,  Springfield,  VA  22153. 

Tl  CHECKWRITER  Letter  code  and  dollar 
amount  are  all  that's  necessary  lo  print 
a  complete  check.  Provides  yearly  totals 
for  taxes.  Disk  $24.95.  R.I. P.  Software 
248  Purisima  Rd.,  Woodside  CA  94062. 


SCIENCE  SOFTWARE  with  graphics  for  the 
Commodore  64.  Astronomy  programs,  etc. 
Catalog  and  demo  disk  $3.  David  Eagle, 
79S2  W,  Quarto  Dr.  Littleton,  CO  80123. 

FIXED  ASSET  DEPRECIATION  on  C64. 
Handles  acts  and  pre-acrs  methods.  $39.95. 
For  free  info  write:  MPM  Softw^are  Prods., 
P.O.  Box  3522,  Glendale,  CA  91201. 

ATARI  USERS.  4  games  on  cassette,  $25. 
Saucers  +  monsters,  poker,  sea  finder,  pinball. 
Write  or  call  Keith  Anderson,  8435  12th  Ave., 
Silver  Spring,  MD  20903  (301)  434-0285. 


HARDWARE 


REPLACEMENT  POWER  SUPPLIES  FOR 
C-64  or  VIC-20.  $29  ea.  plus  $3  shipping. 
64  parts  list  $5-refundable  w/lsl  order. 
AA  Computer,  2726  Park  St.,  JAX,  FL  32205. 

NUMERIC  KEYPAD  with  joystick  CURSOR 
control,  gold  contact  $75.  Centronics  interface 
$40.  Aulodos  cartridge  automatically  loads 
programs  from  easy-to-use  menu  $40.  All  C-64 
fully  compatible.  SS  64  RF  Mod.  $40.  Battery 
Back-up  with  best  available  protection  for  C-&4 
$50,  Apple/IBM  $150  (U.S.)  APPLIED 
COMPUTING,  Box  1566,  PTBO,  ONT.  K9J  7H7. 
Send  $2  for  cat.  Call  (705)  745-8617  anytime. 


MISCELLANEOUS 


Trade  In  your  used  Commodore  or  Atari 

on  a  brand  new  C-128  or  Alan  ST.  This  offer 
mav  not  be  available  through  retail  outlets- 
Bro'chure  $1.50  and  SASE.  NEW  WEST 
TECHNOLOGY,  4B  Monroe  Pkw.,  Box  200,  Ste. 
134,  Lake  Oswego,  OR  97034 

FLYING  COMPUTERS  but  stuck  on  the  ground? 
Learn  requirements  lo  fly  airaafl,  with  or  with- 
out license.  $3.00  to:  Aviation  Resource,  P.O.  Box 
369-C,  Lancaster,  NY  14086. 

Super  99  Monthly— quality  info  for  TI-99/4A 
&  compatibles  since  09/84.  US  $12/yr.  Other 
$16/yr.  Bylemaster  Computer  Svces.,  171 
Mustang,  Sulphur,  LA  7(1663. 


FREE!  SHOP  BY  MODEM  in  our  revolutionary 
electronic  shopping  mall.  We  even  accept 
credit  cards!  We  have  products  YOU  want! 
Call  1-818-840-8066  with  your  modem  NOW! 

BUY-SELL-TRADE  computers,  hardware,  soft- 
ware. Announce  clubs,  BBS's,  etc.  Send  for 
free  sample  of  Micro-Swap,  the  coinputer 
classifieds.  P.O.  Box  24,  Esmond,  IL  60129. 

COMPUTER  OWNERS!!!  Earn  dollars  and  save 
money  wilh  your  computer.  Write  C&D 
Associates,  Box  851,  Ml.  Prospect,  IL  60056. 
Specify  computer  type.  No  Investment!! 

TI-99/4A  Software/Hardware  bargains. 
Hard  lo  find  items.  Huge  selection. 
Fast  Service.  Free  Catalog. 
D.E.C,  Box  690,  Hicksville,  NY  11801 

LOWEST  DISK  PRICES-SS/DD  wilh  sleeve  & 
label-10/$8.80,  bulk  100/S78.  Ds/DD  with 
sleeve  &  Iabel-10/$10.90,  bulk  100/$99. 
Prime  quality  major  mfr's  overstock! 
Money-back  satisfaction  guarantee!  Min 
order  $15.  Pay  by  MC/Visa/AE,  UNITECH 
20  Huriey  St.,  Cambridge,  MA  02141 
(800)343-0472,  in  Mass  (617)  864-8324. 

HELP  IS  ON  THE  WAYI 

Jusl  call  1-800-334-0868  to  get  your  free 
copy  of  the  latest  COMPUTE!  B'ooks  Catalog! 
tf  you  need  help  in  getting  information  on 
all  of  the  latest  COMPUTE!  book  titles 
available  plus  all  COMPUTE!  backlist  tides, 
call  us  today! 

SAFEGUARD  YOUR  COMPUTER  KEYBOARD 
from  contaminants  with  OVERBYTE  molded 
keyboard  covers.  $24.95  xparent  &  durable. 
Ca'u  (213)  866-2583/send  $2  further  info. 
OVERBYTE-PO.  Box  10652,  Burbank,  CA  91510. 

PHONEMARK  DATASETTES:  C64,  Plus4,  Vlc20. 
$25.00  plus  shipping.  We  are  direct  importers. 
American  Mercantile  Co.,  2450  1st  Ave.,  South, 
Seattle,  WA  98134  (206)  624-6141. 

DISK  SERVICE  MANUAL.  Service  floppies 
without  special  software  or  equipment. 
FREE  information.  Consumertronics-DSM, 
P.O.  Drawer  537,  Alamogordo,  NM  88310. 

MAXELL  MDl,  $1.39  -  MD2,  $1.99.  Dvsan 
104/lD,  $1.79  -  104/2D,  $2.39.  Shipping 
$3.75.  Also  Verbatim,  IBM,  3M,  BASF.  TAPE 
WORLD,  220  Spring  St..  Butler,  PA  16001, 
1-800-245-6000,  Visa,  MC. 

$$  MONEY  MAKER  $S 

Increase  your  income  by  hundreds  and  even 
thousands  of  dollars.  Money  back  guarantee! 
(Apple,  Macintosh,  IBM)  Free  brochure: 
1-800-223-5838  (305-771.5498). 


August  1985    COMPUTEI     41 


62     COMPUTE!      Augus' 


NMAF 


Steve  Johnson 


This  feature-packed  utility  makes  it  a  breeze 
to  create  your  own  short  cartoons  or  anima- 
tion sequences  on  the  computer  screen.  The 
original  version  is  for  the  IBM  PC  with 
BASJCA  and  color / graphics  adapter,  or  En- 
hanced Model  PCjr  with  Cartridge  BASIC. 
We've  added  versions  for  the  Atari  400/800, 
XL,  and  XE  with  at  least  32K  RAM  for  disk  or 
24K  RAM  for  tape;  Commodore  64  and  128  (in 
64  mode);  TI-99/4A  with  Extended  BASIC; 
and  Apple  Il-series  computers  with  at  least 
48K  RAM.  The  Atari  and  64  versions  also 
require  a  joystick. 


Computer  animation  can  be  marvelous  to  behold 
but  a  drudge  to  produce.  Whether  you're  working  in 
BASIC  or  machine  language,  creating  objects  and 
manipulating  them  on  the  screen  can  mean  fum- 
bling for  hours  with  PEEKs,  POKEs,  bits,  bytes,  and 
other  tedious  details, 

"Animator"  goes  a  long  way  toward  automat- 
ing this  process.  It  works  much  like  a  cartoonist's 
sketchpad,  letting  you  draw  a  series  of  similar  im- 
ages which  are  then  displayed  in  rapid  sequence  to 
create  the  illusion  of  movement.  Your  finished  car- 
toons can  be  saved  on  disk  or  tape  and  reloaded  for 
viewing  later. 


3H 


What  every  Apple  11+  and  He 

user  shoula  ask  before 

buying  the  "Sider"  10  MB  hard  disk: 


When  a  company  offers  a  superior  qual- 
ity 10  megabyte  Winchester  hard  disk 
for  only  S695,  it's  bound  to  raise  a  few 
eyebrows . . .  and  a  lot  of  questions.  The 
fact  is,  you're  probably  already  wonder- 
ing "Can  I  really  get  a  10  megabyte  hard 
disk  that's  reliable  for  only  $695?"  The 
answer  is:  ABSOLUTELY... when  you 
choose  the  Sider  from  First  Class 
Peripherals. 

What's  so  great  about  the  Sider? 

For  starters,  the  Sider  lets  you  boot  your 
Apple  11+  or  He  directly  off  the  hard 
disk— unlike  some  other  Winchester 
subsystems.  Rebooting  is  also  trouble- 
free.  And  the  disk  is  partitionable, 
allowing  you  to  allocate  space  to  four 
operating  systems  on  the  same  disk. 
The  Sider  supports:  Apple  DOS  3.3;  Pro 
DOS™;  Apple  Pascal;  andCP/M® 

What's  more,  a  small  "footprint" 
lets  you  incorporate  the  compact  Sider  into 
your  existing  computer  set-up  with  ease. 

In  addition,  with  the  Sider,  you  not 
only  pay  far  less  for  the  subsystem,  you  also 
save  money  on  installation.  Because,  unlike 
other  10  MB  systems  that  require  the 
purchase  of  expensive  "extras,"  the  Sider 
is  f^ug  and  ptay.  Everything  you  need  is 
provided,  including  cables,  host  adaptor, 
installation  software  and  manual. 

What  makes  it  so  reliable? 

To  start,  the  Sider  is  manufactured,  and 
sold  exclusively,  by  First  Class  Peripherals, 
an  innovative  computer  company  which  is 
backed  by  Xebec.  The  computer  industry's 
leading  manufacturer  of  disk  controllers. 
Xebec  has  over  a  decade  of  experience 
serving  customers  like  IBM,  Toshiba,  Texas 
Instruments  and  Hewlett  Packard.  It's  this 
kind  of  expertise  that  helps  assure  the 
Sider's  performance 

Special  design  features  further  en- 
hance reliability  The  Sider's  controller  is 
the  field-proven,  industry  standard  Xebec 
S1410A.  And  Xebec's  3200  drive  tester,  the 

Apple  and  Pro  DOS  are  irademarks  of  .^pple  Compuier,  Inc. 
CP/M  is  a  registered  wdonark  of  Digital  Research,  Inc 


"Onfy^F" 


toughest  in  the  industry,  ensures  that  the 
Sider  will  operate  reliably  One  more  assur- 
ance of  the  $695  Sider's  quality:  it's  UL 
Approved  and  FCC  Class  B  rated. 

But  why  is  it  only  $695? 

You  pay  less  for  the  Sider  than  for  other  10 
MB  hard  disks  simply  because  you're  pay- 
ing for  the  superior  quality  components 
inside  the  unit,  not  for  a  lot  of  retail  over- 
head costs.  Since  First  Class  Peripherals 
sells  direct,  vou  avoid  dealer  and  dis- 


tribution expenses,  and  pay  only  for 
the  product. 

What  about  a  guarantee? 

Like  many  experienced  Apple  users,  you 
may  be  reluctant  to  buy  a  hard  disk 
priced  at  only  S695  without  first  seeing 
for  yourself  how  it  performs.  That's  why 
First  Class  Peripherals  offers  you  a  re- 
assuring, money-back  guarantee  that 
eliminates  any  risk  on  your  part.  Simply 
order  the  Sider  and  use  it  for  15  days. 
Then,  if  you're  not  entirely  satisfied, 
return  it  and  receive  a  full  refund— no 
questions  asked. 

The  Sider  also  conies  with  a  full 
one-year  limited  warranty.  Plus,  there's 
a  convenient,  toll-free  hotline  you  can 
call  anytime  you  have  a  technial  or 
service  question,  or  need  help. 

Don't  delay. 
Order  the  Sider  now. 

To  receive  the  Sider  10  megabyte  Win- 
chester hard  disk  subsystem  for  only  $695, 
simply  order  using  the  coupon  below.  For 
faster  service,  order  by  phone  and  charge 
to  your  MSA,  MasterCard  or  American 
Express.  (You  can  also  call  us  if  you  have 
any  questions  or  technical  concerns  about 
the  Sider  We'll  see  you  get  the  help  you 
need.)  Call  toll-free: 

1  800  538-1307 

Extension  709 


DYes, 


please  send  me  the  Sider,  including  half-height  10  megabyte  Winchester  hard  disk  drive. 


iVame 


Apple  adaptor  board,  cable,  complete  installation  software  and  documentation, 

1  prefer  to  pay  as  follows: 

n  r\'e  enclosed  my  check  or  nionc)'  order  for 

S695*  -I-  S15  shipping  and  handling,  payable 

to  First  Class  Peripherals. 
n  Please  bill  the  following  credit  card  account 

for  5695'  +  S15  shipping  and  handling: 
DVISA     D  .MasterCard     D  .American  lixpre.ss 


Adiin-ss 


ai\ 


Slate 


7aP 


Card# 


lixp.  Date 


Signature 

■  Rcf idcnis  of  Z\.  N\'  and  PA .  plea.'k'  add  jRiropriaiL-  sali'S  lax. 


Tekphmie  {area  code) 

Mail  to: 

■^■■F  I  R  S  T 

•^^m  PERIPHERALS 


^v')  Highv^av  50  East 
Carson  Citw  S'V  89701 

709 


If  you're  using  the  IBM 
PC/PCjr  version  of  Animator,  type 
in  and  save  Program  1,  then  run  it 
and  follow  the  instructions  below, 
//you  have  an  Atari,  64,  Tl,  or  Apple, 
you  should  also  read  the  following 
instructions  as  a  general  guide  to  us- 
ing Animator.  Then  refer  to  the  typ- 
ing instructions  and  programming 
notes  specific  to  your  computer  for 
additional  details. 

Drawing  An  Image 

When  you  run  Animator,  it  displays 
an  editing  screen  with  20  numbered 
frames.  You  can  draw  as  many  as 
20  pictures,  one  in  each  frame,  then 
flip  rapidly  through  the  frames  to 
create  animation.  The  frame  num- 
ber displayed  at  the  upper  left  of 
the  screen  shows  which  frame 
you're  currently  working  on.  Nor- 
mally, Animator  begins  the  anima- 
tion with  frame  1  and  ends  with 
frame  20.  But  you  can  start  and  end 
the  animation  wherever  you  like. 
For  example,  a  short  sequence 
might  start  with  frame  1  and  end 
with  frame  3.  To  view  only  part  of  a 
long  sequence,  you  might  start  at 
frame  12  and  end  at  frame  18,  and 
so  on.  The  frame  number  is  con- 
trolled by  pressing  the  right  and  left 
arrow  keys. 

The  frame  number  also  deter- 
mines which  frame  you'll  be  work- 
ing on  when  you  go  to  the  editing 
screen.  Let's  start  with  a  simple  ex- 
ample. Make  sure  the  frame  num- 
ber is  set  to  1,  then  press  the  2  key 
to  select  the  editing  function  and 
press   Enter  at   the  next  prompt. 


FREE  CATALOG! 

Features  Precision  Tools  and 
Equipment  for  Computers 


^^ 

»|k»^. 

f  v^ 

KhfciBcs-'^ 

.■'..- 

H^^^  m^^^ 

.im. 

^Bfef  "•  '^  ^~^ . 

m 

'1,  ^^ 

W  ^*---'           .'- 

■r,,_ 

1 

Jensen's  new  catalog  features  hard-to- 
find  precision  tools,  tool  kits,  tool  cases, 
test  equipment  and  computer  acces- 
sories used  by  sophisticated  hobbyists, 
scientists,  engineers,  faboratories  and 
government  agencies.  Call  or  write  for 
your  free  copy  today. 

781 5  S.46lh  Street 
Phoenix,  AZ  85040 
(602)  968-6231 


JGNSGN 

TOOLS  INC. 


After  a  brief  pause.  Animator  dis- 
plays a  drawing  grid  with  a  blink- 
ing cursor.  Edit  mode  has  three 
main  functions,  selected  by  press- 
ing different  keys.  Press  D  to  draw 
with  the  cursor,  E  to  erase,  and  M  to 
move  the  cursor  without  disturbing 
anything  on  the  screen. 

Draw  a  simple  shape  on  the 
grid  to  become  familiar  with  these 
basic  functions.  As  you'll  see,  Ani- 
mator displays  the  shape  in  its  actu- 
al size  to  the  left  of  the  drawing 
grid.  An  inverse  function  lets  you 
reverse  everything  on  the  grid — 
every  dot  becomes  a  blank,  and 
vice  versa  (be  patient — it  takes  Ani- 
mator about  a  minute  to  complete 
this  process). 

Once  the  picture  is  finished, 
you  can  press  S  to  save  it  and  return 
to  the  main  screen.  Note  that  you 
must  save  a  picture  with  S  to  put  it  in 
the  frame.  If  you  exit  the  edit  mode 
by  pressing  Q,  the  new  picture  is 
lost  and  Animator  uses  whatever 
that  frame  previously  contained. 
Try  drawing  a  simple  shape  and 
saving  it  with  S  (since  this  is  just  for 
practice,  any  scribble  will  do). 
When  you  return  to  the  main 
screen.  Animator  displays  the  pic- 
ture in  frame  1, 

Frame  By  Frame 

Now  you're  ready  to  draw  the  next 
frame  in  the  sequence.  In  most 
cases  you'll  want  to  make  only 
slight  changes  from  one  frame  to 
the  next,  to  simulate  smooth  mo- 
tion. To  save  time.  Animator  lets 
you  copy  a  picture  from  one  frame 
to  another.  Let's  demonstrate  this 
by  copying  the  picture  from  frame  1 
to  frame  2.  Set  the  picture  number 
to  1  with  the  arrow  keys,  then  press 
2  to  edit.  Animator  displays  a 
prompt,  inviting  you  to  enter  a 
frame  number.  To  edit  the  current 
picture  number,  you  would  just 
press  Enter.  However,  by  entering  a 
different  number  you  can  copy  the 
current  picture  into  a  different 
frame,  then  change  that  picture  to 
make  the  next  frame  in  your 
cartoon. 

When  you  enter  2  at  the 
prompt.  Animator  copies  the  pic- 
ture from  frame  1  into  the  drawing 
grid.  When  the  drawing  grid  ap- 
pears, make  some  change  in  the 
picture  to  distinguish  it  from  frame 
1.  Now  press  S  to  save  the  picture 
in  frame  2  and  return  to  the  main 


screen.  Animator  displays  both  pic- 
tures in  their  respective  frames. 

After  drawing  a  few  frames, 
you're  ready  to  bring  them  to  life. 
The  first  step  is  to  specify  the  start- 
ing and  ending  frame  numbers.  The 
starting  number  determines  which 
frame  begins  the  animation,  and 
the  ending  number  tells  Animator 
where  the  series  ends. 

Set  the  starting  number  first. 
Use  the  arrow  keys  to  set  the  frame 
number  to  1,  then  press  the  3  key. 
Now  use  the  arrow  keys  to  make 
the  frame  number  match  the  last 
frame  that  contains  a  picture,  then 
press  the  4  key.  This  sets  the  ending 
number.  You  must  always  set  the 
starting  and  ending  numbers  before 
selecting  animation  (if  you  don't. 
Animator  flips  through  all  20 
frames  whether  they  contain  pic- 
tures or  not).  Once  these  numbers 
are  set,  press  the  1  key  to  view  the 
sequence.  Press  the  space  bar  to 
pause  and  Enter  to  stop  it. 

By  selecting  different  speed  and 
pause  values,  you  can  move  the  ani- 
mated figure  across  the  screen.  The 
speed  value  can  range  from  — 15  to 
15.  When  it  is  0,  the  figure  is  ani- 
mated in  place;  positive  values 
move  the  figure  from  left  to  right, 
and  riegative  values  move  it  from 
right  to  left.  The  greater  the  value, 
the  faster  the  figure  moves.  Press 
the  5  key  to  decrease  the  animation 
speed,  and  6  to  increase  it. 

The  pause  value  controls  the 
time  delay  between  each  frame  of 
the  animation.  A  small  pause  value 
makes  the  pictures  change  very 
quickly,  while  larger  values  slow 
down  the  process. 

Macro  Editing  Features 

Animator  provides  a  few  macro 
(large-scale)  editing  features  to  help 
you  work  with  longer  cartoons.  The 
insert  function  lets  you  insert  a 
blank  frame  anywhere  in  the  series. 
To  use  it,  set  the  frame  number  to 
the  number  of  the  frame  where  you 
want  to  insert  a  blank,  then  press 
the  I  key.  The  designated  picture 
(and  all  those  following  it)  are 
bumped  forward  one  frame.  Note 
that  the  picture  in  frame  20  is  al- 
ways lost  when  you  insert. 

The  delete  function  lets  you 
delete  any  frame  in  the  series. 
Change  the  picture  number  to  the 
frame  you  want  to  eliminate,  then 
press  D.  All  the  higher  numbered 


44     COMPUTEI     August  1965 


jM    88K  Lowest  Price  In  The  USA!  152K 

ATARI  Computer  System  Sale 

*   Students  *   Word  Processing   •   Home   •   Business 


Rated  "Best  Buy"  by  Consumers  Digest  Buyers  Guide,  January  1985 

$449 


LOOK  AT  ALL  YOU  GET  FOR  ONLY 

SYSTE/V\  PRICE 

Atari  800XL  88K  Computer 

Atari  1050  1  27K  Disk  Drive 

Atari  1027  Letter  Quality  20  CPS  Printer 

Atari  Writer  Word  Processer 

Atari  BASIC  Tutorial  Manual 

All  connecling  cobtes  S  TV,  interface  Included.  ^^ 

Monifors  sold  seporelly,  T^jT  A  L  J 


LIST  PRICE 

SI  79.00 

299.00 

299.00 

59.95 

16.95 


INDIVIDUAL 

SALE  PRICE 

$109°" 

199°° 

199°° 

39" 

12" 


$852.90      $559.90 


SAVE  $100 

All  5  ONLY 
$44900 

SYSTEM 
SALE  PRICE 


152K  SYSTEM 
S49900 


Other  Accessories  List 

2"  HI  Resolution  Green  or  Amber  Screen  Monitor    $T99.00 


13"  Hi  Resolution  Color  Monitor 
■  ATARI  130XE  152K  Computer 


$399.00 
S249.00 


Sale  Add  S9. 95  for 

Connection  Cobles 

"'■°5  (Monitors  Only) 

169.95  (Ltd.OtyJ 

159.00  Add  SIO  for  UPS 


15  DAY  FREE  TRIAL.  We  give  you  15  day,  to  try  out  tfiis  ATARI  COMPUTER  SYSTEM  i  ■  If  H  doesn  t  meet  your  expectations  just  send  it  bock  to  us  prepaid 
ond  we  v^.ll  refund  your  purchase  price!  i  »0  DAY  IMMEDIATE  REPLACEMENT  WARRANTY.  If  ony  of  tfie  ATARI  COMPUTER  SYSTEM  equipment  or 
progroms  fail  due  lo  foulty  worhmonship  or  material  within  90doy5  of  purchase  we  will  reploce  it  IMMEDIATELY  with  no  service  charge!  ' 


Best  Prices  •  Over  1000  Programs  and  500  Accessories  Available  •  Best  Service 
*  One  Day  Express  Mail  *  Programming  Knowledge  *  Technical  Support 


Add  $2S.OO  for  shipping  and  handling!! 

Enclose  Cashiers  Check  Money  Order  or  Personol  Check.  Allow  U 
doys  for  delivery.  2  lo  7  days  for  phone  orders.  I  day  express  mail ! 
We  accept  Visa  and  MasterCard.  We  ship  C.O.D.  to  conlinentol 
US  oddresses  only.  Add  SIO  more  if  C.O.D 


COMPUTER  DIRECT 

We  Lore  Our  Cu.stomrrfi 
22292  N.  Pepper  Rd..  Barrington,  III.  60010 

312/382-5050  to  order 


pictures  move  down  one  frame,  de- 
leting the  picture  in  the  designated 
frame.  Frame  20  is  always  blank 
after  a  deletion. 

The  inverse  function  (press  9) 
works  just  like  inverse  in  editing 
mode,  but  inverts  all  20  frames  at 
once. 

To  clear  all  20  frames,  press  Q 
to  quit  or  C  to  clear.  Since  these  last 
two  functions  can  have  drastic  re- 
sults, Animator  lets  you  abort  either 
one  without  harm. 

When  you  finish  a  sequence, 
press  S  to  save  it  on  disk.  The 
screen  clears  and  displays  three  op- 
tions: You  can  Press  A  to  abort  the 
save,  F  to  list  the  picture  files  on 
that  disk,  or  any  other  key  to  con- 
tinue with  the  save.  Picture  file- 
names are  limited  to  eight 
characters  {the  first  character  can- 
not be  a  number).  Do  not  add  a 
three-character  extension;  Anima- 
tor automatically  appends  the  ex- 
tension .  ANI  when  you  save  or  load 
a  picture  file. 

Finally,  Animator's  program 
option  (available  only  in  the  IBM 
PC/PCjr  version)  can  write  a  sepa- 
rate BASIC  program  to  display  your 
cartoon.  Press  P  to  select  this  op- 
tion, and  sit  back  while  Animator 
writes  the  new  program  to  disk  un- 
der the  filename  PRG.BAS.  After- 
ward, Animator  ends  with  a 
reminder  to  reload  PRG.BAS  and 
save  it  with  a  new  filename.  This 
prevents  the  program  from  being 
overwritten  if  you  select  this  option 
again. 

Commodore  64  Version 

The  64  version  of  Animator  is  writ- 
ten entirely  in  machine  language, 
but  you  can  use  it  without  under- 
standing machine  language  at  all. 
Type  in  and  save  Program  2  using 
the  "MLX"  machine  language  entry 
program  printed  elsewhere  in  this 
issue.  Here  is  the  information  you'll 
need: 

Starting  address:  49152 
Ending  address:  52991 

After  you've  saved  "64  Anima- 
tor," plug  a  joystick  into  port  2  and 
load  the  program  with  LOAD"/!7e- 
name",3A  for  disk  or  L0AD"/!7e- 
Hflme",l,l  for  tape.  Type  SYS  49152 
and  press  RETURN  to  run  the 
program. 

64  Animator's  main  screen 
consists  of  21  picture  frames  in- 
stead of  20  as  found  in  the  IBM 


version.  It  also  uses  sprites  to  ani- 
mate the  frames.  Although  the 
Commodore  64  normally  is  limited 
to  displaying  eight  sprites  at  once, 
64  Animator  employs  as  many  as 
22  simultaneous  sprites  with  the 
raster  interrupt  technique  described 
in  COMPUTEI's  First  Book  of  Com- 
modore  64. 

When  you  begin  the  program, 
the  frames  may  contain  random 
data;  Press  C  to  clear  them  out. 
Most  program  functions  are  con- 
trolled with  the  joystick.  Near  the 
bottom  of  the  screen  you'll  see  a  list 
of  several  functions  (frame  num- 
bers, options,  and  so  on,  as  de- 
scribed above  in  the  general 
instructions).  As  you  move  the  joy- 
stick up  or  down,  the  function  you 
select  is  highlighted  in  reverse  vid- 
eo. To  increase  or  decrease  the  se- 
lected value,  move  the  joystick  left 
or  right. 

Press  the  E  key  to  enter  edit 
mode.  The  joystick  moves  the 
blinking  cursor  around  the  drawing 
grid,  and  the  fire  button  toggles  the 
space  under  the  cursor  on  or  off.  To 
draw  or  erase  more  than  one  space 
at  a  time,  hold  the  joystick  button 
down  and  move  the  stick  in  the 
direction  you  want. 

The  current  picture  number  is 
displayed  to  the  right  of  the  screen. 
You  can  move  to  a  different  picture 
within  edit  mode:  Press  the  +  key 
to  increase  the  picture  number,  and 
the  —  key  to  decrease  it.  Animator 
always  displays  the  current  picture 
in  actual  size  above  the  picture 
number.  Above  and  to  the  right  of 
the  current  picture  is  the  next  pic- 
ture in  the  series,  and  above  to  the 
left  is  the  previous  picture.  (If  you 
haven't  drawn  any  pictures  yet, 
these  frames  may  be  blank  or  con- 
tain random  shapes.) 

Press  1  within  edit  mode  to  in- 
vert the  shape  (change  dots  to 
blanks,  and  vice  versa).  The  cursor 
keys  shift  the  entire  shape  one 
space  inside  the  grid,  either  left, 
right,  up,  or  down.  You  can  also 
expand  the  picture  horizontally 
(press  X)  or  vertically  (press  Y).  Ex- 
pansion is  toggled  off  by  pressing 
the  same  keys,  and  can  be  used  on 
the  main  screen  as  well. 

Edit  mode  lets  you  copy  a  pic- 
ture from  one  frame  into  another. 
Press  the  (7  function  key  to  store 
the  current  shape  in  the  picture 
buffer.   Then   change   the   picture 


number  with  +  or  —  and  press  f8 
(SHIFT-f7)  to  copy  the  picture  from 
the  buffer  into  the  new  frame.  In 
this  way  you  can  quickly  draw  a 
series  of  shapes  without  leaving 
edit  mode.  The  R  key  returns  you 
from  edit  mode  to  the  main  screen. 

Animoting  On  The  64 

Before  watching  the  animation,  set 
the  starting  and  ending  frame  num- 
bers to  the  appropriate  range.  The 
joystick  button  turns  animation  on 
and  off.  To  change  the  speed  during 
animation,  move  the  joyshck  left  or 
right.  Press  the  fl  function  key  to 
clear  everything  but  your  animated 
figure  off  the  screen  (fl  also  brings 
back  the  main  screen).  You  can 
change  the  picture  color  by  press- 
ing the  CTRL  key  and  one  of  the 
number  keys  from  1-8.  The  colors 
are  the  same  as  those  printed  on  the 
front  of  the  keys.  For  example, 
press  CTRL-0  to  color  every  figure 
black. 

Insertions  and  deletions  work 
as  in  the  IBM  version,  except  that 
an  insertion  retains  the  original  pic- 
ture in  the  selected  frame  rather 
than  inserting  a  blank.  To  quickly 
fill  several  frames  with  the  same 
picture,  press  I  several  times. 

64  Animator  can  save  and  load 
picture  files  with  either  disk  or  tape. 
Be  sure  to  set  the  starting  and  end- 
ing numbers  before  saving,  since 
nothing  is  saved  outside  that  range. 
The  prefix  ANI.  is  added  to  picture 
files  on  disk;  do  not  type  this  prefix 
when  loading  or  saving.  To  abort  a 
save  or  load,  press  RETURN. 

It's  possible  to  merge  pictures 
from  different  files  if  the  two  files 
use  different  frame  numbers.  Sim- 
ply load  the  second  file  after  the 
first.  The  main  screen  now  contains 
pictures  from  both  files.  If  the  files 
have  overlapping  frame  numbers, 
the  second  file  has  priority.  For  ex- 
ample, say  that  you  load  ANI.A, 
which  uses  frames  1-3,  then  load 
ANl.B,  which  uses  frames  3-5. 
Frame  3  will  contain  the  picture 
from  the  ANl.B  file. 

64  Animator  also  lets  you  add 
sound  effects  in  edit  mode.  Press  D 
to  add  or  clear  the  drum  sound. 
Animator  displays  a  small  drum  on 
the  screen  when  the  sound  is  pre- 
sent. To  add  musical  notes  in  edit 
mode,  press  one  of  the  number 
keys  from  1-8  for  low  notes,  and 
SHIFT  plus  1-8  for  high  notes.  A 


46     COMPUTEI      August  1985 


#  Commodore  64  Accessories 

Sumnter  Sixxlor  Sale 


Sale  Positively  Ends  9-10-85 

Prices  will  go  back  to  regulor  sale  prices 

C128  Commodore  Computer 

Expandable  to  512K,  runs  C-64,  CPM,  and  7.0  Progroms. 
(Add  SIO  Shipping) 

1572"  Commodore  150-170  CPS  Printer 

Near  Letter  Quality,  Multiple  Pin  Troctor     Friction  Feed. 
Best  Printer  Value  in  U.S.A.  (Add  S17.50  Shipping) 

Commodore-64  IEEE  Interface 

Allows  you  to  run  Pet  Peripherals  on  the  C-64,  including  the 
One  Megabyte  Disk  Drive  and  15'  i"  Printer 

Juki  Printer/Typewriter 

Letter  Quality,  daisy  wheel,  use  as  typewriter  and'  or  printer 
(auto  correction)  (Add  SIO  Shipping) 

SCM  80  CPS  Printer 

Tractor   Friction  10"  Famous  Nome  Printer  does  Graphics 
w  Interface.  (Add  SIO  Shipping) 

Cardco  G  Plus  Interface 

Converts  Commodore  to  Centronics  for  use  with  most  printers,  plus 
does  Commodore  graphics  on  graphic  printers 

Alphacom  40  Column  Printer 

Thermal  technology  -  does  graphics.  (Add  $10  Shipping) 
Alphacom  C-64  or  Atari  Interface  SB.  95. 

190K  Slim-Line  Disic  Drive 

Cooler,  20%  faster,  quieter  then  1541  drive  (Add  SIO  Shipping) 

One  Megabyte  Disk  Drive  (lOOOK) 

Double  sided  drive  hooks  up  to  C-64  with  IEEE  interface,  perfect  as  a 
second  drive.  (Add  SIO  Shipping) 

13"  Premium  Quality  Color  Monitor 

Better  than  1702,  with  separated  video  inputs.  (Add  SI  4.50  Shipping) 

Voice  Synthesizer 

Allows  you  !o  folk  through  your  computer.  Optional  software  lets 
you  ploy  talking  adventure  games  (Zork,  etc.) 

80  Column  Board  -  4  Slot  Expander 

Allows  you  to  program  in  80  columns,  plus  gives  you  a  4  slot  switch 
selectable  expander 

Auto  Dial  Modem  with  Super  Smart  Software 

Upload,  Download,  Print,  Calalog,  This  Package  has  it  all!  I  ! 
Best  Modem  Value  in  the  U,S.A.  I  ! 

Musicalc  I  Software 

The  Best  Musical  Software  for  the  C-64.  allows  you  to  chonge  all 
parameters. 

Oil  Barrens  Software 

Better  thon  Monopoly,  comes  with  game  board,  disks  and 
instruction  manual.  Strike  Oil  or  Live  in  the  Poor  Form 


Add  53,00  lor  shipping,  hondling  and  insuronce,  Illinois  residents 
please  add  6%  lax.  Add  S6,00  for  CANADA,  PUERTO  RICO,  HAWAII, 
ALASKA,  APO-FPO  orders,  Canodion  orders  must  be  in  U,S,  dollars, 
WE  DO  NOT  EXPORT  TO  OTHER  COUNTRIES,  EXCEPT  CANADA, 
Enclose  Cashiers  Check.  Money  Order  or  Personal  Check.  Allow  14 
days  for  delivery,  2  1o  7  days  for  phone  orders,  1  doy  express  moil  I 

VISA  —  MASTER  CARD  —  CO.D. 
No  C-0,D,  to  Canada,  APO-FPO, 


List 

Reg. Sale 
Price 

9vmmer 
Sixxler  Sale 

S34900 

$20909 

$289« 

S39500 

S29900 

$249'' 

M09" 

*69'"' 

*^5« 

S34900 

*249'«' 

$229"' 

S29900 

«l59oo 

n49" 

S|Qgoo 

'5900 

*«^" 

S99OO 

»24« 

f22's 

$24900 

*T59oo 

$12995 

S83900 

$^9900 

$ljg95 

S399OO 

$19900 

n69" 

53900 

$4900 

$2995 

S14900 

$7900 

$g99S 

M29'^ 

$5900 

^39" 

S599S 

»29'* 

sja^s 

M9' 


'19" 


9S 


*  plus  Software  Coupon  Discounts 


We  LiO've  Our  Customers 

22292  N.  Pepper  Rd.,  Barringlon,  Illinois  60010 

312/382-5244  to  order 


small  note  is  displayed  when  a  note 
is  present.  Clear  a  note  by  pressing 
9.  Control  the  duration  of  sounds 
from  the  main  screen. 

Press  Q  to  exit  64  Animator.  If 
you  waiit  to  restart  the  program, 
you  must  load  it  again  as  described 
above.  Don't  reenter  with  SYS 
49152. 

Atari  Version 

"Atari  Animator"  is  in  two  parts. 
First  type  in  and  save  Program  3, 
then  Program  4.  If  you're  using  cas- 
sette, substitute  the  following  line 
for  line  2  of  program  3: 

06  2     PRINT     "CD0WN>PRE89     RETU 
RN"iRUN     "CiPflRTZ" 

Cassette  users  must  also  save 
Program  4  on  the  same  tape  immedi- 
ately after  Program  3.  After  both 
programs  have  been  saved,  plug  in 
a  joystick  and  read  the  general  in- 
structions above.  When  you're 
ready  to  continue,  load  and  run 
Program  3  (be  sure  to  rewind  the 
tape  to  "the  beginning  if  you're  us- 
ing cassette).  Program  3  loads  the 
machine  language  portion  of  Ani- 
mator, then  automatically  loads 
and  runs  Program  4. 

The  main  screen  provides  21 
picture  frames.  Move  the  joystick 
up  or  down  to  select  any  of  the 
values  displayed  at  the  bottom  of 
the  screen,  and  move  it  right  or  left 
to  increase  or  decrease  the  selected 
value.  Press  E  to  go  to  the  editing 
screen.  In  edit  mode,  move  the 
blinking  cursor  around  the  drawing 
grid  with  the  joystick.  The  fire  but- 
ton acts  like  a  toggle:  If  you  press  it 
while  the  cursor  is  on  a  blank 
square,  the  cursor  begins  drawing; 
if  you  press  it  while  the  cursor  is  on 
a  filled  square,  the  cursor  begins 
erasing. 

To  the  right  of  the  drawing  grid 
is  the  current  frame  number  and  the 
picture  in  actual  size.  You  can 
change  to  a  different  frame  while  in 
edit  mode:  Press  the  +  key  to  in- 
crease the  frame  number  and  the  ~ 
key  to  decrease  it.  Atari  Animator 
also  lets  you  copy  a  picture  from 
one  frame  to  another  via  the  picture 
buffer.  Press  the  G  key  to  get  (copy) 
the  current  picture  into  the  buffer. 
Then  change  the  frame  number 
with  the  +  or  —  key  and  press  P  to 
put  (move)  the  picture  from  the 
buffer  into  the  new  frame. 

Press  the  E  key  to  exit  the  edit 


mode  and  return  to  the  main 
screen.  After  setting  the  starting 
and  ending  frame  numbers,  press 
the  fire  button  to  begin  the  anima- 
tion. To  stop  the  animation,  press 
the  fire  button  again.  While  the  car- 
toon is  moving,  you  can  change  the 
figure's  color  by  pressing  any  key 
(shifted  keys  provide  additional 
colors). 

The  clear  function  (press  C) 
clears  the  current  frame  in  edit 
mode  or  all  frames  on  the  main 
screen.  Atari  Animator  does  not 
have  automatic  insert  or  delete 
functions,  but  you  can  accomplish 
the  same  thing  with  a  series  of  indi- 
vidual get  and  put  operations.  You 
can  save  sequences  on  disk  or  tape, 
using  any  appropriate  filename  for 
disk. 

Apple  Version 

"Apple  Animator"  runs  on  any  Ap- 
ple Il-series  computer  with  0(35  3.3 
or  ProDOS.  The  program  requires 
two  files  on  disk:  the  main  BASIC 
program  and  a  binary  file  (ANIMA- 
T0R2)  that  contains  graphics  data. 
Type  in  and  save  Programs  5  and  6, 
tbien  run  Program  5  to  create  ANl- 
MAT0R2  on  disk.  You  must  run 
Program  5  before  running  Program  6 
for  the  first  time.  However,  you 
don't  need  to  run  Program  5  each 
time  you  want  use  Program  6 — 
only  once  to  create  the  ANIMA- 
TOR2  file. 

After  running  Program  5,  read 
the  general  instructions  above,  then 
load  and  run  Program  6.  The  pro- 
gram works  much  like  the  IBM 
PC/PCjr  version,  and  most  of  its 
functions  are  self-prompting.  Use 
the  right  and  left  arrow  keys  to  pick 
the  correct  frame  number  before 
editing.  For  instance,  if  the  frame 
number  is  3  when  you  choose  the 
edit  function,  frame  3  appears  on 
the  editing  screen.  To  copy  the  pic- 
ture in  frame  3  into  a  different 
frame,  enter  the  desired  frame 
number  when  prompted. 

When  the  editing  screen  ap- 
pears, move  the  blinking  cursor  left, 
right,  up,  or  down  by  pressing  the  J, 
L,  I,  and  K  keys,  respectively.  To 
put  your  drawing  in  the  current 
frame,  exit  the  edit  mode  with  the 
save  option  (the  quit  option  restores 
whatever  that  frame  previously 
held).  The  remaining  functions 
(load,  save,  insert,  delete,  invert, 
etc.)  work  as  described  in  the  gener- 


al instructions  above,  except  that 
Apple  Animator  uses  no  filename 
extenders  for  picture  files. 

Tl  Version 

"TI  Animator"  is  very  similar  to  the 
IBM  version.  Be  sure  TI  Extended 
BASIC  is  plugged  in  before  typing 
and  saving  Program  7. 

Since  the  TI-99/4A  screen  can 
display  only  10  frames  at  once,  the 
20  frames  are  divided  into  two 
groups  (1-10  and  11-20)  on  alter- 
nate screens,  Press  the  N  key  to 
switch  back  and  forth.  You  can 
change  the  color  of  the  screen  back- 
ground or  foreground  drawing 
color  by  pressing  the  B  or  F  keys. 

TI  Animator  can  save  anima- 
tion files  on  disk  or  tape.  When 
saving  on  tape,  enter  CSl  for  the 
filename.  When  saving  or  loading 
from  disk,  be  sure  to  type  the  prefix 
DSKl.  at  the  beginning  of  each 
filename. 

Program  1 :  Animator  for 
IBM  PC/PCjr 

Please  refer  to  "COMPUTEI's  Guide  to  Typing 
h  Programs"  before  entering  tfiis  listing. 

OP  5  DEF  SEG=05POKE  1047, PEEK (10 
47)  OR  i4 

PK  30  KEY  OFF!  CLS:  SCREEN  1 !  DEF  S 
EBiPDKE  I.H4E,  1 

CL  110  DEF  SEBiPOKE  tcH4E,  2 

OL  150  REM  l«»  MAIN  PROGRAM  «« 
t 

AF  160  CLS !  SCREEN  2:  KEY  OFF  i  FOR 
I-l  TO  101  KEY  I, ""iNEXT 

U  170  REM  i»«   SET  UP  VARIABLES 
III 

ED  180  DIM  AX(144)  ,BX(144)  ,D7.  (14 
4)  ,EX(144)  ,Fy.(144)  ,C7.(144 
),BX(144)  ,HX(144)  ,  17.(144) 
,J%(144)  ,KX(144>,L7.(144), 
M7.  <  144)  ,  Ny.  ( 144)  ,  07.  (  1 44 )  ,  P 
y.<144),a7.(144),RX(144),97. 
(144),Ty.  (144)  <UX(144)  ,A(2 
0, 54) I NUM-1 : STA-1 lEN-201 S 
P-01 PL-1 1  BET ( 1 , 10> - ( 54 , 30 
>,UX 

BL  1<?0  X=9sY-3l!  LOCATE  l,39iPRIN 
T  "  SPEED-  •■  I BP 1 1 LDC ATE  1,1 
1  PR  I  NT  '■  NUMBER-  "  (  NUM  i  i  LOCA 
TE  1, 14tPRINT"START=")3TA 
I  1  LOCATE  1, 26 1  PR I NT" STOP- 
"jENiiLOCATE  l,55iPRINT"C 
HANQE  PAUSE- "1  FAST 

BE  200  REM  III  SET  UP  SCREEN  t 
»* 

P8  210  LOCATE  22,1  i PRINT" 1-ANIM 
ATE  2-EDIT  3-STA 
RT  PIC.  4-END 

PIC. "1  LOCATE  23,1)PRINT"5 
-SLOWER      6-FASTER 
7-FABTER  PIC.  SWITCH     8 
-SLOWER  PIC.  SWITCH"} I LOC 
ATE  24 ,  1 1  PR  I  NT  ■■  9- 1 NVERBE 
ALL  THE  PICTURES"} 

FK  220  LOCATE  21 , 1 i PRINT" (S) AVE 
(DDAD         (C)LEA 
R  ALL  (CDUIT 

( P ) ROBAM " t I  LOCATE  4 , 
7aiFOR  I-l  TO  101  PRINT" 


48     COMPUTEI      August  1985 


"|l|il«XTiLOCATE  13,79i 
FOR  I-ll  TO  2Bi PRINT"  " 
I  I|ir4EXT 

IH  23S»  LOCATE  20,  1 1  PRINT"  <  I)  NSER 
T  PIC.  <D)ELE 

TE  PIC"! 

K  24»  FOR  T-1  TO  2iFOR  I-l  TO  5 
lLINE<ft,X)-(fl+53, Y) , ,BiLI 
NE(A+t0,X)-(A+115,Y) , ,BiA 
-A-4-120lNEXTiA-0iX-B0iV-10 
21  NEXT 

m  2S0  REM  t«*  READ  PICTURES  t 
«* 

K  260  GET (1,10) -(54, 30), AX: GET ( 
fal , 10) - ( 1 14, 30) , BXi GET  < 12 
l,lB)-(174,30),CXieeT(l81 
, 10) -(234, 30) ,DXiGET(241, 
10) -£294, 30) ,EXi GET (301,1 
0)- (354,30) ,FXiGET(3il,10 
)-(414,30) ,QXiGET(421, 10) 
-(474,30) ,HXiaET(4Bl, 10)- 
(334,30),IXlQET(541,10)-( 
394,30) ,JX 

El  270  BET(l,ai)-(54, l01),KXiSET 
(tl,ai)-(114,101) ,LXlSET( 
12 J , 81 ) - ( 174, 101 ) , MXi GET ( 
IBl , 81) - (234, 101 ) , NZi GET ( 
241,ai)-(294,101),OXtSET( 
301 , Bl ) - (334, 101 ) , PXi GET ( 
3il,Bl)-(414,101),aXiGET( 
421,Bl)-(474,10i),RXiQET( 
461 , Gl ) - (334, 101 ) , SXi GET ( 
541,B1)-(S94,101),TX 

if.  280  REM  tt*  WAIT  FDR  KEY  »» 
t 

CI  290  A»-INKEY»iIF  A*-""  THEN  2 
90  ELSE  IF  LEN(A«)-?  THEN 
B30  ELGE  IF  VAL(A»)>0  AN 
D  VAL(A«)<10  THEN  430 

OL  300  IF  A«-"P"  THEN  3080 

JO  310  IF  A«<>"D"  THEN  350 

P»  320  LOCATE  IB,  Ij  PRINT  "ARE  YOU 
SURE  YOU  WANT  TO  QUIT? 
(Y/N)" 

Jl  330  A«»INKEY»iIF  A«-" "  THEN  3 
30  ELSE  IF  A«-"Y"  THEN  SC 
REEN  0,0,0iC:LSiEND  ELSE  L 
OCATE  18,1 1  PRINT  STRING* ( 
S0, 32) I  SOTO  290 

CD  340  REM  ttt  CLEAR  SCREEN  tt 
t 

CC  350  IF  A«<>"C"  THEN  380 

HH  360  LOCATE  17,  1 1  PR  I  NT  "ARE  YOU 
SURE   (Y/N) "iDEF  SEGiPOK 
E  t0&,0 

DD  370  A»-INJ<EY«!lF  A«-""  THEN  3 
70  ELSE  IF  A»-"Y"  THEN  CL 
Si  SOTO  190  ELSE  LOCATE  17 
,IlPRINT  STRING*{66,32)iB 
OTO  290 

PR  380  IF  A«-="S"  THEN  870  ELSE  I 
F  A«»"L"  THEN  990 

00  390  IF  A*«="D"  THEN  2800  ELSE 
IF  A«-"I"  THEN  2360 

Hfl  400  GOTO  290 

DF  410  IF  FAST=0  THEN  BEEPsGOTO 
290  ELBE  FAST-FAST- 1 1 LOCA 
TE  l,6SiPRINT  FAST) I  GOTO 
290 

JL  420  IF  FAST" I 50  THEN  BEEP:  GO 
TO  290  ELSE  FAST=FAST+1 i L 
OCATE  1, 68 t PR I NT  FAST|iGO 
TO  290 

KP  430  ON  VAL(A*)  GOTO  520,1080, 
470, 300, 4B0, 430, 410, 420, 3 
040 

REM  ttt   SET  SPEED   »<« 
IF  SP=i5  THEN  BEEP  ELSE  S 
P-SP+U LOCATE  l,46i PRINT 
SP 

GOTO  290 

STA=NUMiLDCATE  l,2asPRINT 
ST A I  GOTO  290 

PP  480  IF  SP=-15  THEN  BEEP  ELSE 


FH 

440 

CI 

450 

II 

460 

DJ 

470 

ID 

490 

HP 

300 

U 

310 

Bl 

520 

EG 

530 

CI 

540 

DK 

550 

m 

560 

CN  570 


■'Animator  for  IBM  PC/PCjr"  takes  ad- 
vantage of  extended  BASIC  graphics  fea- 
tures such  as  GET  and  PUT. 


SP-SP7I! LOCATE  l,46i PRINT 

SP 
GOTO  290 

EN-NUMi LOCATE  1,31: PRINT 
ENlSDTO  290 
REM  ttt   ANIMATE  PICTURES 

ttt 
LOCATE  17,1: PRINT-PRESS  S 
PACE  BAR  TO  PAUSE  MOVEHEN 
T"iLOCATE  ie,llPRINT"USE 
ARROW  KEYS  FOR  SPEED" i IF 
STA>EN  THEN  QQ--1  ELSE  QQ 
-1 

FOR  I=ETA  TO  EN  STEP  □□ 
PL1=PL:IF  PL+SP<1  THEN  PL 
-370  ELSE  IF  PL+SP>3B0  TH 
EN  PL-1 
PL=PL+SP 

LOCATE  1,8: PRINT  I i ON  I  G 
OTO  630,640,650,660,670,6 
80,690,700,710,720,730,74 
0, 750, 760, 770, 780, 790, 800 
,810,820 

FOR  N=-0  TO  FASTt4:NEXT:A« 
-INKEYtilF  A*-"  "  THEN  23 
40  ELSE  IF  ft«<>""  AND  LEN 
(A«)<>2  THEN  LOCATE  I,aiP 
RINT  NUMlLDCATE  17, liPRIN 
T  STRING* (150,32)1  GOTO  29 
0 

IF  LEN  (A*)  02  THEN  620 
C-ASC(RIGHT*(A», 1>): IF  C- 
77  THEN  BP-5P+1  ELSE  IF  C 
=75  THEN  SP-SP-l 
IF  SP=-16  THEN  SP=-15  ELS 
E  IF  SP-16  THEN  SP-15 
LOCATE  1,46j PRINT  SP 
NEXTsGOTO  530 
PUT(PLl,52> ,UX,PSET:PUT(P 
L,32) , AX I  GOTO  570 
PUT(PL1,32) ,UX,PSETiPUT(P 
L,52),BXiG0T0  570 
PUT (PLl , 52) , UX, PSET: PUT (P 
L,32),CXlG0T0  570 
PUT (PLl , 52) , UX, PSET : PUT (P 
L,52) ,DXiGOTO  370 
PUT (PLl , 32) , UX, PSETi PUT (P 
L,52) ,EX«QOTO  570 
PUT (PLl, 52) ,UX,PSETiPUT(P 
L,52),FXiBOT0  570 
PUT (PLl , 52) , UX, PSETi PUT (P 
L,52),GXiGaT0  370 
PUT (PLl , 52) , UX, PSET J  PUT (P 
L,52) ,HXiGOTO  570 
PUT (PL  1 , S2) , UX, PSETi  PUT (P 
L,52) ,1X1  GOTO  570 
PUT (PLl , 32) , UX, PSET: PUT ( P 
L,52) ,JXiSaTO  570 
PUT (PLl, 52), UX, PSETi PUT (P 
L,52) ,KXiQ0TO  570 
PUT (PL  1,52) ,UX, PSETi PUT (P 
L,52) ,LXiGOTO  570 
PUT (PLl, 52 ),UX, PSET: PUT (P 
L,52),MXiS0TQ  370 
PUT ( PLl , 32) , UX, PSET: PUT ( P 


D6  5B0 
Fft  590 


EN  600 

EL  610 
EJ  620 
no  630 

OE  640 

BK  650 

DA  660 

FG  670 

IK  680 

KC  690 

LF  700 

OL  710 

AB  720 

CH  730 

FK  740 

HO  750 

KJ  760 


HP 

770 

Of 

780 

Bl 

790 

CO 

800 

EE 

810 

m 

B20 

JH 

830 

FO 

B40 

in 

850 

PC 

860 

LO 

870 

HF 

880 

BH  890 


CO  900 


jn  910 


11  920 


CD  930 


IE  940 
BL  950 
i)    960 


BJ  970 


AE  980 

KJ  990 
ID  1000 


CD  1010 


PI  1020 


ni  1030 


SD  1040 


PK  1050 


L,S2)  ,NXt(30T0  570 

PUT  (PLl,  52)  ,LrX,  PSET;  PUT  (P 

L,52),OX|QOTO  370 

PUT (PLl , 52) , UX. PSETi PUT (P 

L,52),py.lBOTO  370 

PUT (PLl , 52) , UX, PSETi PUT (P 

L,52),QXlGaTO  370 

PUT (PLl , 52) , UX, PSETi  PUT (P 

L,32) ,RXiGOTO  370 

PUT (PLl , 32) , UX, PSET: PUT  < P 

L,52) ,SXlBQTO  570 

PUT (PL  1 , 52) , UX, PSETt  PUT { P 

L,S2),TXiB0T0  370 

C=ASC(RIGHT«(A*, 1) ).IF  C- 

77  THEN  NUM-NUM+1  ELSE  IF 

C-75   THEN    NUM-NUM-1 
IF    NUM<«0    THEN    NUM-20    ELSE 

IF  NUM-21  THEN  NUM-l 
LOCATE  1, a 1  PR I NT  NUMiGOTO 

290 
REM  ttt   SAVE  PICTURE   tt 
■ 

CLSiON  ERROR  GOTO  25010 
LOCATE  10, 10:PRINT"F-FILE 
S  A-ABORT  SAVE  AN 
Y  OTHER  KEY  TO  CONTINUE" 
A«=INKEY«!lF  A«=""  THEN  8 
90  ELSE  IF  A*-"F"  THEN  Fl 
LES"t.ANI"  ELSE  IF  A*-" A" 

THEN  GOBUB  2310s  GOTO  190 
PRINT:PRINTiPRINT5 1NPUT"N 
AME  OF  FILE  TO  SAVE"lA*iI 
F  A*-""  THEN  QOSUB  2310: G 
DTO  190 

IF  INSTRIA*, ". ")<>0  THEN 
CLSi LOCATE  9, 10B PRINT"ND 
EXTENSION  PLEASE. ."I  GOTO 
880 

IF  LEN(A«)>Q  THEN  CLS:LOC 
ATE  9,10«PRINT"NO  MORE  TH 
AN  8  CHARACTERS  PLEASE" :G 
OTO  BS0 
IF  VAL{R1GHT«(A«, 1))>0  OR 

RIGHT* (A«, 1)="0"  THEN  CL 
SiLOCATE  9, 10!PRINT"THE  F 
IRST  CHARACTER  CAN'T  BE  A 

NUMBER . . " I  GOTO  BB0 
BOSUB  2310 
A«=A*+".ANI" 

DEF  SEG=S!HB800:BSAVE  A«,  0 
,J,H4000i  PRINT"  IT  HAS  BEEN 

SAVED.       PRESS  ANY  KEY 

TO  CONTINUE" I PRINTi PRINT 
; PRINT 

A«=INKEV«:IF  A«=""  THEN  9 
70  ELSE  CLSiGOSUB  23103  GO 
TO  190 

REM  ttt   LOAD  PICTURE   tt 
t 
CLSiQN  ERROR  GOTO  23000 

LOCATE  10, 10sPRINT"F-FIL 

ES      A-ABORT  LOAD 

ANY  OTHER  KEY  TO  CONTINU 

E" 

A»=INKEY«! IF  A«=""  THEN 

1010  ELSE  IF  A*="F"  THEN 
FILES"t.ANI"  ELBE  IF  A* 

-"A"  THEN  BOSUB  23101 BDT 

0  190 

PBINTiPRINTsPRlNTs INPUT" 
NAME  OF  FILE  TO  LOAD"; A* 

1  IF  A*-=""  THEN  BOSUB  231 
01  GOTO  190 
IF  INSTR(A«, ". ")<>0  THEN 

CLSl LOCATE  9,10iPRINT"N 
O  EXTENSION  PLEASE.. "1  BO 
TO  1000 

IF  LEN(A*)>8  THEN  CLSsLO 
CATE  9, 10iPRINT"NO  MORE 
THAN  B  CHARACTERS  PLEASE 
"I  GOTO  1000 

IF  VAL (RIGHT* (A», 1) ) >0  O 

R  RIGHT* (A», l)-"0"  THEN 

CLS 1  LOCATE  9 , 1 03  PRI NT " TH 


August  1985  COMPUTE!   49 


JC  1090 

!A  1100 

ED  1110 

PB  1120 


E  FIRST  CHARACTER  CAN'T 
BE  A  NUMBER.." I BOTO  1000 

HE  1060  A««=A«+".ANI"iDEF  SEG^IiHB 
S00IBLOAD  A«,0iQN  ERROR 
GOTO  01  SOTO  190 

L6  1070  REM  «tt   EDIT  A  PICTURE 
(tt 

JQ  1080  LOCATE  16,  1 :  PR  INT  "TYPE  I 
N  21  TD  ABORT" I  PR I NT "NUM 
BER  SET  AT  THE  TOP  DF  TH 
E  3CREEN  IS  PIC.  TO  READ 
FROM  RETURN  FDR  BAME":L 
OCATE  IB, liINPUT"EDIT  PI 
CTURE  NUMBER" J Bi IF  B<0  O 
R  B>21  THEN  BEEPjSOTD  10 
B0 

IF  B=21  THEN  CLSsBOSUB  2 
3101  GOTO  190 
IF  B=0  THEN  B=NUM 
REM  «tf   PUT  PICTURE  TO 
EDIT  ON  SCREEN   ttt 
CLS: LOCATE  1 , 24i PRINT"WA 
IT..."iDN  NUM  GOTO  1130, 
1140,1150, 1160, 1170,1180 
,  1190,1200,1210, 1220,123 
0, 1240, 1250, 1260, 1270,  12 
S0, 1290, 1300, 1310, 1320 
PUT(1,50) .AXiGDTO  1340 
PUT(1,50)  ,Br.jGDTD  1340 
PUT<1,50)  ,Cy.iBaTO  1340 
PUT<1,30)  ,Dr.iGQTO  1340 
PUT<1,50)  ,Er.!GQTO  1340 
PUT(1,50)  ,Fy.iGOTO  1340 
PUT  1 1 , 50) , GXi GOTO  1340 
PUT( 1,50) ,HXs GOTO  1340 
PUT (1,50), IX! GOTO  1340 
PUT(l,50>,JXtGOTD  1340 
PUT (l,50>,KXi GOTO  1340 
PUT(l,50),LXiGaTO  1340 
PUT(l,50),MXl6OTO  1340 
PUT ( 1,50), NX 1  GOTO  1340 
PUTll,50),DXiGOTO  1340 
PUT(l,50>,PX!GaTO  1340 
PUT(l,50),DXiGOTO  1340 
PUT(l,50),RXiGOTO  1340 
PUT(l,S0J,SX!eOTO  1340 
PUT(l,50),TXiGOTO  1340 
REM  »t»   GET  ON-OFF  POIN 
TS   t** 

FOR  I-l  TO  201  FOR  )t=l  TO 
54tA(I, X ) -POINT (X, 1+49) 
NEXTtNEXT 

REM  ««*   DRAW  EDITING  SC 
REEN   ttt 

FDR  1=1  TD  20! LOCATE  3+1 
,14i PRINT  " 

'.'.'.'.'.'.'.'.'..'.'.'.'.'..."  1  i  FOR 

J=l  TD  54l IF  A(I,J)-1  TH 

EN  LOCATE  3+1 , 13+Jl PRINT 

"#" 
n    1360  NEXTiNEXT 

CP  1390  LOCATE  1 ,30: PRINT" (Q)UIT 
(D)RAW    (M)OVE    (E) 

RASE    (OLEAR    (S)AVE 
(DNVERSE" 
PL  1400  GOTO  1550 
BF  1410  REM  ttt   PLACE  CURSOR   t 

tt 
KO  1420  BLINKX»(BLINKX+1J  MOD  20 

>IF  BLINKy.<10  THEN  1470 

ELSE  1440 
PJ  1430  REM  ttt   CURSOR  OFF   ttt 
6H  1440  IF  A  (ROW,  COLUMN)  =-0  THEN 

CH«-"."  ELSE  IF  A (ROW, CO 

LUMN)-1  THEN  CH««"»" 
6F  1450  GOTO  14S0 

Bll  1460  REM  ttt   CURSOR  ON   ttt 
LO  1470  IF  CURS— 1  THEN  CH«="-" 

ELSE  IF  CURS-0  THEN  CH»= 

"t"  ELBE  IF  CURS=1  THEN 

CH«-"+" 
EI  14B0  LOCATE  3+ROW, 13+COLUMN: P 

RINT  CH* I  I  RETURN 

50     COMPUTEI      August  1965 


HB 

1130 

PJ 

1140 

Qll 

1150 

6P 

1160 

CC 

1170 

DF 

1100 

FI 

1190 

EP 

1200 

FC 

1210 

SF 

1220 

II 

1230 

JL 

1240 

KO 

1250 

L! 

1260 

HE 

1270 

NH 

1280 

PK 

1290 

Ot 

1300 

PE 

1310 

AH 

1320 

PO 

1330 

JO 

1340 

PL 

1350 

KB 

1360 

IB 

1370 

DC  1490  REM  ttt   REMOVE  CURSOR 
ttt 

BH  1500  IF  A  (ROW,  COLUMN)  =0  THEN 

CH«-"."  ELSE  IF  ft (ROW, CO 

LUMN)-=1  THEN  GHt-"#" 
CF  1510  LOCATE  3+ROW, 13+COLUMN: P 

RINT  CHt) I  RETURN 
OP  1520  LOCATE  24,1B:PRINT  "w«it 

"11  FOR  I-l  TD  201  LOCATE 

3+I,14lPRINT  gTRING*(54, 

46)  I 
EH  1530  NEXT:  ERASE  A:  DIM  A  (20,  54 

)l LOCATE  24, 18; PR  INT" 
" I  1  PUT ( 1 , 50) , UX, PSETs  RE 

TURN 
CD  1540  REM  ttt   SET  CURSOR   ttt 
I J  1550  ROW=l: COLUMN- 1 1 CURS=0 
NF  1560  REM  ttt   MAIN  LOOP   ttt 
EH  1570  BLINKX"0iIF  CURS=-1  THEN 
A ( ROW , COLUMN ) -0 i PSET ( CD 

LUMN,R0W+49) ,0  ELSE  IF  C 

URS-+1  THEN  A (ROW, COLUMN 

)-liPaET(COLUMN, ROW +49 ) , 

1 
IL  1580  SOSUB  1420 
P6  1S90  A«-'INKEY«:DEF  SEG:POKE  1 

06,01  IF  LEN(A«)-0  THEN  1 

580  ELBE  IF  LEN(A»)-1  TH 

EN  1600  ELSE  IF  LEN(A«)> 

2  THEN  1720 
DM  1600  C0DE1''ASC(A«}  AND  l<h45F 
K    1610  REM  ttt   READ  KEYS   ttt 
Df  1620  IF  C0DE1=ASC<"E")  THEN  2 

040 
P«  1630  IF  C0DE1«ASC("M")  THEN  2 

050 
ef  1640  IF  C0DE1"=AEC("D")  THEN  2 

060 
JC  1650  IF  CDDE1=ASC<"C")  THEN  2 

0B0 
St  1660  IF  CDDE1=ASC("S")  THEN  2 

100 
60  1670  IF  C0DE1-ASC("D")  THEN  G 

OSUB  23101  GOTO  190 
PP  1680  IF  CDDE1=-ASC("I")  THEN  1 

710 
DB  1690  GOTO  1580 
tCE  1700  REM  ttt   INVERSE  A  PICTU 

RE   ttt 
IF  1710  QET(l,S0)-(54,7a),UX-PUT 

( 1 , 50) , UX, PRESET: GET (1,7 

5)-(S4,95) ,UXieOT0  1340 
EL  1720  IF  ASC(A«)<>0  THEN  1570 

ELSE  C0DE2 •>ASC(RIQHT«(A« 

,1}}|G0SUB  1500 
HB  1730  REM  ttt   READ  ARROW  KEYS 

tit 
IC  1740  IF  C0DE2-71  THEN  1040 
Pft  1750  IF  C0DE2=73  THEN  1B70 
m  1760  IF  C0DE2=79  THEN  1900 
U  1770  IF  C0DE2=81  THEN  1930 
PI  1780  IF  C0DE2=72  THEN  1960 
FN  1790  IF  C0DE2=75  THEN  1980 
ML  1B00  IF  C0DE2=77  THEN  2000 
iP  1B10  IF  CODE2=S0  THEN  2020 
U  1S20  GOTO  15B0 
W    1830  REM  ttt   MOVE  THE  CURSOR 

ttt 
EJ  1840  JF    ROW-1  THEN  ROW=21 
F«  1B50  IF  COLUMNS 1  THEN  COLUMN- 

55 
LE  1860  ROW-ROW- Is COLUMN-COLUMN- 

liSOTO  1H70 
EC  1870  IF  ROW-1  THEN  ROW-21 
IW  18B0  IF  CQLLiMN"S4  THEN  COLUMN 

-0 
ID  1890  ROW-ROW- 1 I COLUMN-C0LUMN+ 

liGDTD  1570 
LK  1900  IF  RDW-20  THEN  ROW-0 
Fd  1910  IF  COLUMN- 1  THEN  COLUMN- 

55 
JA  1920  ROW=ROW+itCOLUMN-CDLUMN- 

1 1  GOTO  1570 
M  1930  IF  ROW-20  THEN  RO«=0 


LD  1940  IF  CDLUMN-54  THEN  COLUMN 

-0 
8P  1950  ROW=ROW+ 1 1 CDLUMN-COLUMN+ 

Is  SOTO  1570 
EB  1960  IF  ROW-1  THEN  ROW-21 
KB  1970  ROW=ROW-l:6DTD  1570 
6C  1980  IF  COLUMN- 1  THEN  COLUMN- 

5S 
ON  1990  COLUMN- COLUMN- 1 J  GOTO  157 


JG  2000 

JQ  2010 

LK  2020 
6F  2030 
DJ  2040 
KB  2050 
CJ  2060 
HB  2070 

BN  2080 
HE  2090 

PD  2100 


JB  2110 
LH  2120 
nH  2130 
OC  2140 
m  2150 
CI  2160 
DD  2170 
FO  2180 
HJ  2190 
HI  2200 
ID  2210 
KO  2220 
BJ  2230 
HE  2240 
PP  2250 
BK  2260 
CF  2270 
EA  2280 
EL  2290 
GK  2300 
61!  2310 


IF  COLUMN-54  THEN  COLUMN 

-0 

COLUMN-CDLUMN+ 1 1  GOTO  1 57 

0 

IF  ROW-20  THEN  ROW-0 

ROW=RDW+lsB0T0  1570 

CURS— IsBDTD  1570 

CURS-0: GOTO  1570 

CURS-+1:GDT0  1570 

REM  ttt   CLEAR  THE  PICTU 

RE   ttt 

GOSUB  15201  GOTO  15S0 

REM  ttt   SAVE  THE  PICTUR 

E   ttt 

LOCATE  1,24:PRINT"WAIT.. 

."lON  B  GOTO  2110,2120,2 


130,2 
2180,: 
,2230 


40,2150,2160,2170, 
190, 2200, 2210, 2220 
2240,2250,2260,227 


a   2320 


0,2200,2290,2300 
GET ( 1 , 50) - (54, 70) , AXi GDS 
UB  23101  SOTO  190 
GET ( 1 , 50) - (54, 70) , BXi BOS 
UB  23101  GOTO  190 
GET ( 1 , 50) - (54, 70) , CXt  GDS 
UB  23101  GOTO  190 
GET ( 1 , 50) - (54, 70) , DXl GDS 
UB  23101  GOTO  190 
GET ( 1 , 50) - (54, 70) , EXs  SOS 
UB  23101  GOTO  190 
GET ( 1 , S0) - (54, 70) , FX: BOS 
UB  23101  GOTO  190 
GET ( 1 , 50) - (54, 70) , GXs  BOS 
UB  23101  GOTO  190 
GET  1 1 , 50) - (54, 70) , HXi BOB 
UB  23101  GOTO  190 
BET (1,50) -(54, 70), IXt BOS 
UB  23101  GOTO  190 
GET (1,50) -(54, 70) , JX:GOS 
UB  23101  GOTO  190 
GET ( 1 , 50) - (54, 70) , KXi BOS 
UB  23101  GOTO  190 
GET ( 1 , 50) - (54, 70) , LXi GOS 
UB  23101  GOTO  190 
GET  ( 1 ,  50)  -  (54, 70) ,  MT.!  GOS 
UB  23101  GOTO  190 
GET (1,50) -(54, 70) , NX: GOS 
UB  23101 QOTO  190 
BET (1,50) -(54, 70) , OX: GOS 
UB  23101  GOTO  190 
GET ( 1 , 50) - (54, 70) , PXi GOS 
UB  23101  GOTO  190 
GET ( 1 , 50) - (54, 70) , QX: GOS 
UB  23101  GOTO  190 
BET (1,50) -(54, 70), RXl BOS 
UB  23101  GOTO  190 
GET (1,50) -(54, 70), SX: GOS 
UB  23101  GOTO  190 
SET (1,50) -(54, 70) .TXiGQS 
UB  23101 QOTO  190 
CLS: PUT (1,10), AXl PUT (61 , 
10) , BXl PUT ( 121 , 10) , CXi  PU 
T(lBl,10),DXlPUT(241,10) 
, EXi PUT (301 , 10) , FXi PUT (3 
61, 10),SXiPUT<421,10},HX 
1  PUT (481, 10), IXi PUT (541, 
10) ,JX 

PUT(l,81),KXjPUT<61,81), 
LXi PUT (121,81) , MXt  PUT ( 1 8 
l,ei),NXiPUT(241,Bl),0X! 
PUT (301 , 81 ) , PXi PUT (361 , B 
1 ) , QXi PUT (421 , 81 ) , RXl PUT 
(481,81),SXiPUT(541,ei), 
TX.PffiT 


JL   2330 
on  2340 

PL  2330 

JH  23^0 

HC   2370 
EF  2360 


IIH  2390 
LD  2400 
FB  2410 
IJ  2420 
FN  2430 
in  2440 
HP  2450 

a  24^0 

6B  2470 
OK  24G0 
PS  2490 
FA  2S00 
EK   2510 

2520 
ND  2530 
JD  2S40 
LH  2550 
Dfl  2560 
Ffl   2570 

2SS0 


LB  2590 
LA  2&00 
NL  2610 
OS  2&20 
AB  2630 
Cn  2640 
26S0 
FC  2660 
HH  2670 
JI  2680 
KD  2690 
K  2700 
HH  2710 
01  2720 
Ptt  2730 
BD  2740 
DJ  2750 
EE  2760 
BP  2770 
IK  27B0 
EH  2790 

m  2600 


RETURN 

IF  INKEy«=""  THEN  2340  E 

LSE  620 

REM  «««   INSERT  ft  BLftNK 

PICTURE   ««« 

LOCATE  IS, liPRINT'flRE  YD 

U  SURE?   THIS  WILL  MOVE 

20  OFF  THE  END" 

A»-INKEY«i IF  ft*-""  THEN 

2370  ELSE  IF  fl»<>"Y"  THE 

N  LOCATE  IB, li PRINT  STRl 

NQ«(50,32) iBOTO  190 

ON  NUM  BQTQ  2390,2400,24 

10, 2420, 2430, 2440, 2450, 2 

460, 2470, 2480, 2490, 2500, 

2510, 2S20, 2530, 2540, 2550 

,2560,2570,2620 

aET(l,10)-<S4,30>,BX 

QET(61,10}-(114,30),Cy. 

BET (121, 10) -(174, 30), D% 

GET (181,10) - (234, 30) , EX 

BET (241, 10) -(294, 30), FX 

GET (301 , 10) - (354, 30) , BX 

GETe361, 10)-(414,30) , HX 

GET (421 , 10) - (474, 30)  ,  IX 

BET (4B1 , 10) - (534, 30) , JX 

GET(541, 10)-(S94,30) ,KX 

GET(l,Bl)-{54, 101) ,LX 

BET(61,B1)-(114,101),MX 

GETd  21,  81) -(174,  101), NX 

GET (181,81) -(234, 101), OX 

BET(24I,B1)-(294,101),PX 

GET (301, 81) -(354, 101 ),QX 

BET (361, 81) -(414, 101 ),RX 

BET (421,81) - (474, 101 ) , SX 

BET (481, 81) -(534, 101 ),TX 

CLS:ON  NUM  GOTO  2590,260 

0, 2610, 2620, 2630, 2640, 26 

50, 2660, 2670, 2680, 2690, 2 

700, 2710, 2720, 2730, 2740, 

2750, 2760, 2770,  27B0 

BET ( 1 , 50) - ( 54, 70) , AXt  GOS 

UB  23101  GOTO  190 

GET ( 1 , 50) - (54, 70) , BXs  BOS 

UB  2310) GOTO  190 

BET (1,50) -(54, 70) ,CX:60S 

UB  23101  GOTO  190 

GET ( 1 , 50) - (54, 70) , DX: GOS 

UB  23101  GOTO  190 

GET ( 1 , 50) - (54, 70) , EX: GOS 

UB  2310) GOTO  190 

GET ( 1 , 50) - (54, 70) , FX: BOS 

UB  2310) GOTO  190 

GET ( 1 , 50) - (54, 70) , 6X: GOS 

UB  2310) GOTO  190 

GET ( 1 , 50) - (54, 70) , HX: GOS 

UB  2310) GOTO  190 

GET ( 1 , 50) - <54, 70) , IXs  GOS 

UB  2310LGOTO  190 

GET ( 1 , 50) - (54, 70) , JX: GOS 

UB  2310) GOTO  190 

GET ( 1 , 50) - (54, 70) , KX: GOS 

UB  2310] QOTO  190 

BET ( 1 , 50) - (34, 70) , LXs  GOS 

UB  2310) GOTO  190 

GET (1,50) -(54, 70) ,MXiGOS 

UB  2310) GOTO  190 

GET (1,50) -(54, 70) , NX: BOS 

UB  2310: GOTO  190 

BET ( 1 ,  50) - (34, 70) , OXi  GOS 

UB  2310) GOTO  190 

BET( 1,50)- (54,70) ,PXi60S 

UB  2310) QOTO  190 

BET (1,50) -(54, 70) ,QXiBOS 

UB  23101  GOTO  190 

GET ( 1 , 50) - (54, 70) , RXsSOS 

LIB    2310]  QOTO    190 

eET(l,50)-(54,70) ,SX!GOS 

UB  23101 QOTO  190 

SET (1,50) -(54, 70) ,TX:GOS 

UB  2310) GOTO  190 

REM  «tt   DELETE  A  PICTUR 

E   «tt 

LOCATE  18, l! PRINT-ARE  YO 


U  SURE  YOU  WANT  TO  DELET 
E  THIS  NUMBER" 
EF  2810  A«-=INKEY«)  IF  A«»=""  THEN 
2B10  ELSE  IF  A«<>"y"  THE 

N  LOCATE  16,1) PRINT  BTRI 

NQ«(50,32) )GOTO  190 
NH  2820  ON  NUM  BDTO  2B30,2B40,28 

50, 2B60, 2B70, 2880, 2890, 2 

900, 2910, 2920, 2930, 2940, 

2950, 2960, 2970, 2980, 2990 
,3000,3010,3020 
JL  2830  GET(61,  10)-(1 14,30)  ,  AX 
SB  2840  GET  ( 121,  10) -(174,  30),  BX 
FE  2850  GET  (181,  10) -(234,  30)  ,CX 
m  2860  GET (241, 10) -(294, 30), DX 
IH  2870  BET  (301,  10) -(354,  30),  EX 
LK  2880  GET(361, 10)-(414,30] ,FX 
CO  2890  BET  (421,  10) -(474, 301  ,GX 
CF  2900  eET(4Bl,10)-(S34,30J ,HX 
KJ  2910  GET  (541,  10) -(594,  30),  IX 
LB  2920  GETCI,81)-(54,101),JX 
BL  2930  BET{61,81)-(114, 101) ,KX 
BD  2940  GET(121,81)-(174,101) ,LX 
1112950  BET<lBl,81)-(234,  10i)  ,nX 
LK  2960  BET(241,81)-(294,101) ,NX 
HB  2970  BET(301,81)-(354,101) ,0% 
JA  2980  BET(361,81)-(414,101) ,PX 
SF  2990  GET(421,81)-(474,101),QX 
DK  3000  GET ( 48 1,81) -(534, 101 ),RX 
HP  3010  QET(S41,Bl)-(594, 101),SX 
IP  3020  CLS:GET(1, 10) -(54,30) ,TX 

iGOSUB  2310) GOTO  190 
PI  3030  REM  ttt   INVERSE  ALL  ThE 

PICTURES   ««t 
IK  3040  CLS:  PUT  (1,  10),  AX,  PRESET: 

PUT (61 , 10) , BX, PRESET) PUT 
(121, 10), CX, PRESET) PUT (1 

81, 10),DX,PRESET)PUT(241 
, 10) , EX, PRESET) PUT (301 , 1 

0) , FX, PRESET) PUT (361 , 10) 
,QX, PRESET) PUT (421, 10),  H 

X, PRESET) PUT (481, 10), IX, 

PRESET) PUT (541, 10), JX, PR 

ESET 
nn  3050  PUT (1, 81 ),KX, PRESET: PUT ( 

61 , 81 ) , LX. PRESET) PUT (121 
,81) , MX, PRESET) PUT (181,8 
1 ) , NX, PRESET) PUT (241 , Bl ) 
, OX, PRESET) PUT (301 , HI ) , P 

X, PRESET) PUT (361 , 81 ) , DX, 

PRESET) PUT (421 , 61 S , RX, PR 

ESET ) PUT ( 46 1 , 6 1 ) , BX, PRES 

ET) PUT (541 , 81 ) , TX, PRESET 
EE  3060  GOTO  190 
IF  3070  REM  *««   MAKE  A  PROGRAM 

«*« 
BN  3060  LOCATE  IB, 1 : PR I NT" ARE  YO 

U  SURE  YOU  MANT  TO  MAKE 

THIS  SET-UP  INTO  A  PR06R 

AM?" 
PJ  3090  A«=INKEY»:IF  ft«=""  TI«N 

3090  ELSE  IF  A«-"Y"  THEN 
3100  ELSE  LOCATE  ie,l:P 

RINT  STRING* (66, 32) tBOTD 
290 
KN  3100  B°30:OPEN  "0",ttl , "PRG.BA 

B" 
PL  3110  PRINT  »1,"10  CLSsKEY  OFF 

) SCREEN  2 ) SP- " +STR» ( SP ) + 

")PL-1" 
JL  3120  IF  STA>EN  THEN  Q1D=-1  ELS 

E  QQ-l 
£P  3130  A»="20  DIM  ")FOR  I=-STA  T 

O   EN   STEP   QQ)IF    lOSTA    T 

HEN    A«-A»+"," 
EE  3140   ON    I    GOTO    3150,3160,3170 

, 31S0, 3190, 3200, 3210, 322 

0, 3230, 3240, 3250, 3260, 32 

70, 3280, 3290, 3300, 3310, 3 

320,3330,3340 
in  3150    A«°A«+"AX ( 144) ": GOTO    335 

0 
cn  3160    A»=A»+"BX(144)">B0T0    335 

0 


m   3170 

EH   3180 

Fil  3190 

EA  3200 

FA  3210 

BA  3220 

HA  3230 

lA  3240 

JA  3250 

KA  3260 

LA  3270 

HA  3280 

NA  3290 

HE  3300 

HE  3310 

BE  3320 

PE  3330 

A£   3340 

AD  3350 
Nt   3360 

KO  3370 

KG   33B0 
CE  3390 


PI  3400 
BL  3410 
BO  3420 
CB  3430 
DE  3440 
EH  3450 
EK  3460 
HH  3470 
lA  3480 
JD  3490 
JK  3300 
KK  3510 
LA  3520 
HD  3530 
He  3540 
PJ  3550 
on  3560 
BP  3570 
CC  3580 
DF  3590 
HH   3600 


A«' 

0 

A»^ 

0 

A«^ 

0 

A«: 

0 

Pi*> 

0 

A«= 

0 

A«- 

0 

A«> 

0 

A«= 

0 

A«> 

0 

A«- 

0 

A«- 

0 

A«< 

0 

A«= 

0 

A«- 

0 

A*' 

0 

A«: 


■A»+ "CX ( 1 44 ) " ) GOTO  335 

■A*+"DX( 144)": GOTO  335 

=A»+"EX( 144)-) GOTO  335 

■A»+"FX( 144)": GOTO  335 

■A»+ " GX ( 1 44 ) " : GOTO  335 

■A«+"HX( 144)": GOTO  33S 

=A«+"IX(144) ":SOTD  335 

=A«+"JX( 144)": GOTO  335 

=A*+"KX ( 144) " : GOTO  335 

■A«+"LX ( 144) ": GOTO  33S 

.A«+" MX (144) "(QOTO  335 

■A«+"NX(144) "iQOTD  335 

■A*-»-"OX  (  144)  "  :  GOTO  335 

=A«+"PX(144)":B0T0  335 

=A«+"aX( 144)") GOTO  335 

=fl«+ " RX ( 1 44 ) " I QOTO  333 

.A«+-SX(144)"iB0T0  335 


FH  3610 


A«-A«+"TX(144)")(30TD  333 
0 

NEXT 

A«-A«+",UX(144)")PRINT  « 
1,A«) PRINT  #1,"30  QETd, 
1)-(54,20),UX" 
IF  STA>EN  THEN  00-=- 1  ELS 
E  DQ-l 

FOR  P-STA  TO  EN  STEP  OO 
CLS) ON  P  GOTO  3400,3410, 
3420, 3430, 3440, 3450, 3460 
, 3470, 3480, 3490, 3500, 351 
0,3520, 3530 , 3540 , 3550 , 35 
60, 3570, 3580, 3590 
PUT(1,50),AX;BOTO  3600 
PUT (1, 50), BX: GOTO  3600 
PUT(1,50) ,CX:BOTO  3600 
PUT(1,50),DX:GOTO  3600 
PUT(1,50),EX:BOTO  3600 
PUT (1, 30), FX: GOTO  3600 
PUT (1, 50), GX: GOTO  3600 
F>UT(1,50),HX:BOTO  3600 
PUT (1,50), IX: GOTO  3600 
PUT (1, 50), JX: GOTO  3600 
PUT (1, 50), KX) GOTO  3600 
PUT{1,S0),LX)GDTD  3600 
PUT (1,50), MX: GOTO  3600 
PUT{l,50),NXiGDTD  3600 
PUT (1,50), OX) GOTO  3600 
PUT (1, 50), PX) GOTO  3600 
PUT ( 1 , S0 ) , QX ) GOTO  3600 
PUTtl,50),RX:QQTD  3600 
PUT(1,50) ,SX:GOTQ  3600 
PUT (1, 50), TX) GOTO  3600 
FOR  X=l  TO  54:G=B+10:A«= 
STR»  tG) ) A«°RIGHT« ( A«, LEN 
(A*)-1))F0R  I-l  TO  201  IF 
POINT(X,I+49)-l  THEN  A» 
-A»+")PSET(")B»-BTR»(X)) 
A«-A«+RIBHT« (B«, LEN (B») - 
1 ) ) A«-fl*+ " , " ) B»-STR« (1+4 
9) >  A«-A»+RIQHT« (B»,  LEN ( B 
«)-l))A«-A«+")" 
NEXT) IF  LEN(A«)>6  THEN  B 
«-LEFT* ( A», LEN (STR« (S) ) - 
1))A«-RIBHT«(A«, (LEN(A«) 
-LEN ( B« ) ) - 1 ) ) A*-B*+ "  " +A 
•) PRINT  #1,A«  ELSE  B-B-1 


AA  3620  NEXT 


August  1985     COMPUTE)      51 


ID  3630 


Hn  3640 
CP  36Sa 
EC  3660 
6F  3670 
n  3680 
LL  3690 
LC  3700 
KF  3710 
ei  3720 
Ct  3730 
EO  3740 
BB  3750 
IE  3760 
KH  3770 
NK  37B0 
PM  3790 
PE  3800 
BH  3810 
Ei:  3820 
&>  3830 
PH  3840 
(B  3850 
MK  3860 


EQ  3870 
OF  3880 


in  3890 


nj  3900 

FS  3910 


CK  3920 


KL  3930 


BL  3940 
PP  3950 


B«G+10:A«"STR*(G):A«=RIG 
HT«(A«,LEN(A«)-1)!QN  P  G 
DTD  3640,3650,3660,3670, 
3680 , 3690 , 3700 , 37 1 0 , 3720 
, 3730 , 3740, 3750, 3760, 377 
0, 3780, 3790, 3800, 3810, 36 
20,3830 

A«=A«+"  GET (1,30) -(54, 70 
), AX "I  GOTO  3B40 
A«=A«+"  GET (1,50) -(54, 70 
).  87."  I  GOTO  3840 
A«=ft*+"  GET (1,50) -(54, 70 
),CX"iGOTO  3B40 
A«=A«+"  GET (1,50) -(54, 70 
) ,DX"iGDTO  3B40 
A»=A«+"  GET (1,50) -(54, 70 
) , EX" 1  GOTO  3840 
A*=A*+"  GET (1,50) -(54, 70 
) ,FX"iBOTD  3840 
A«=A*+"  GET (1,50) -(54, 70 
>,6X"lBDTD  3840 
ft»=A*+"  GET (1,50) -(54, 70 
),HX"»eOTD  3840 
A«=A»+"  BET (1,50)- (54,70 
) , IX" s GOTO  3840 
fl»=flS+"  GET (1,50) -(54, 70 
),JX"iBDTO  3B40 
A«-AS+"  GET (1,50) -(54, 70 
),KX"iGOTO  3B40 
A«=A«+"  GET (1,50) -(54, 70 
) , LX" 1  GOTO  3840 
A«=A«+"  GET( 1,50) -(54,70 
) , MX" 1  GOTO  3840 
A«-A$+ "  GET(1,50)-(S4,70 
) , NX" » GOTO  3840 
A«=A»+"  BET (1,30) -(54,70 
),DX"iOOTD  3840 
A«=fl«+"  GET(1,50)-CS4,70 
> ,PX"iGDTD  3840 
ft«=A*+"  GET (1,50) -(54, 70 
> ,aX">BOTO  3840 
A«=A»+"  BET(l,S0)-(54,70 
) ,RX"i6QTD  3840 
A«=A«+"  GET (1,50) -(54, 70 
),SX"lGOTO  3840 
A«=A*+"  GET (I, 50) -(54, 70 
),TX":GOTO  3840 
A*=A«+"!CUS":PRINT  #1,A« 
sNEXT 

IF  STA«=EN  THEN  STN=1:EA= 
liGQTO  3BB0 

IF  STA>EN  THEN  STN=STA-E 
NlEA-1  ELSE  EA-EN-STArST 
N-1 

IF  EA+QQ=0  THEN  EA-EA-Oa 
G=G+10:R=G! A«=RIGHT»(STR 
«(G),LEN(STR«(G) )-!)+"  F 
OR  I-"+RIOHT«(STR«(STN), 
LEN(STR«{STN) )-l)+"  T0"+ 
9TR«(EA+aQ)+"  STEP"+STR« 
(QQ)iPRINT  ttl,A«ie-ei-10 
A«=RIGHT«(STR«(6) ,LEN(ST 
R» (6) )-!)+"  FOR  P-1  TO"! 
A«=A»+STR« (INT (FAST«4.2) 
)+"lNEXT!PLl=PLi IF  PL+SP 
<1  THEN  PL-570  ELSE  IF  P 
L+SP>5B0  THEN  PL-1" 
G=G+10: PRINT  #1,A« 
A*=RIBHT*(STR*(G),LEN(ST 
R*(G))-1)+"  PL-PL+SP'-sPR 
INT  #1,A«:G=G+10 
A*=RIGHT« (STR« (G> , LEN(BT 
R«(G) )-l)+"  ON  I  60T0":X 
-G+10SA«=A«+STR«<X) sFDR 
1=STA  TO  EN+CQQt-l)  STEP 
QQ:X=X+10:A«=A*+", "+RIG 
HT«(STR«(X) ,LEN(STR»(X) ) 
-1)  iNEXTsPRINTttl,  A« 
IF  STA>EN  THEN  0=STA:W=E 
N  ELSE  IF  EN>STA  THEN  Q= 
EN5W=STA 
FOR  P=W  TO  Q 
G=G+10: A*=RIGHT« (STRt (G) 
,LEN(STR«(G))-1) SON  P  GO 


TO  3960,3970,3980,3990,4 
000,4010,4020,4030,4040, 
4050, 4060, 4070, 4080, 4090 
,4100,4110,4120,4130,414 
0,4150 
IE  3960  A*-A*+"  PUT(PL1,52),UX,P 
BET!PUT(PL,52) , AXs"sGOTO 
4160 
LE  3970  ft»=A«+"  PUT(PL1,52) ,UX,P 
SET  1  PUT  tPL, 52) , BXi " : GOTO 
4160 
BE  3980  A»=ft«+"— PLJT(PLl,52X,Ur.,P 
SET: PUT (PL,52) , CX: " : GOTO 
4160 
BE  3990  A»=A*+"  PUT  (PLl  ,  52)  ,  UX,  P 
SETi PUT (PL, 52) , DXi " ! GOTO 
4160 
BF  4000  A*=A«+"  PUT(PL1,52> ,UX,P 
SET! PUT (PL, 52) ,EX: " : GOTO 
4160 
EF  4010  A»=A«+"  PUT(PL1,52),UX,P 
SET! PUT (PL, 52) , FXi " 1  GOTO 
4160 
HF  4020  A«=A»+"  PUT(PL1,52),UX,P 
SET I  PUT (PL, 52) , GXt " : GOTO 
4160 
KF  4030  A*=A«+"  PUT(PL1,52) ,UX,P 
BETiPUT(PL,52) ,HX! ":GOTO 
4160 
KF  4040  A«=A»+"  PUT(PL1,52) ,UX,P 
SET! PUT (PL, 52) , IXi ":6DTD 
4160 
W  4050  A»=A«+"  PUT(PL1,52> ,UX,P 
SET! PUT (PL, 52) , JXi " : GOTO 
4160 
BF  4060  A*=A«+"  PUT(PL1,S2) ,UX,P 
SETiPUT(PL,52),KX!"!G0T0 
4160 
BF  4070  A*=A«+"  PUT(PL1,52),UX,P 
SET! PUT (PL, 52) ,LXi"»GOTD 
4160 

JF  4080  A«=A»+"  PUT<PL1,52) ,UX,P 
SETiPUT(PL,52) ,MXi"iGOTO 
4160 
KF  4090  A«=A«+"  PUT(PL1,52) ,UX,P 
SETi PUT (PL, 52) , NX: " : GOTO 
4160 
BJ  4100  A«=A«+"  PUT(PL1,52) ,UX,P 
SET! PUT (PL, 52) ,OXi " : GOTO 
41(!t0 
9J  4110  A*=A«+"  PUT(PL1,52) ,UX,P 
SETt  PUT (PL, 52) , PX: " ! BDTD 
4160 
EJ  4120  A*=A«+"  PUT(PL1,52> ,UX,P 
SET; PUT (PL, 52) ,QX!":GOTD 
4160 
HJ  4130  At=A«+"  PUT(PL1,52),UX,P 
SET: PUT (PL, 52) ,RX!"iGOTD 
4160 
KJ  4140  A»=A«+'"  PUT(PL1,52)  ,UX,P 
SET! PUT (PL, 52), SX: " : GOTO 
4160 
NJ  4150  ft»=A*+"  PUT(PLl,52)  ,U7-,P 
SET: PUT (PL, 52) , TX: " > GOTO 
4163 
BO  4160  A«=A»+"GDTO'"+STR«(X  +  10)  1 
PRINT  #1, A«:NEXT!G»X+10 
LN  4170  A»=RIGHT»(STR»iG> ,LEN(ST 
R«<G))-l)sA«-A«+"  NEXT:G 
•OTD"+STR*(R) iPRINT«l, A» 
Nfl  4180  CLOSE  «1:CLS:PRINT"BEF0R 
E  YOU  DO  ANYTHING  ELSE  L 
DAD  THE  PROGRAM  <PRG>  AN 
D  THEN  SAVE  IT  UNDER  THE 
NAME  YOU  WANT" I  END 
6D  25000  BDSUB  25020: RESUME  990 
BH  25010  GDSUB  25020! RESUME  870 
PJ  25020  PRINT:  PRINT  " 

DIS 
K  ERROR  #"ERR 
6P  25030  PRINT!  PRINT  " 

HIT  SPACE 
BAR  TO  CONTINUE" 


CI  25040  A«  =  INKEY»i  IF 
EN  25040  ELSE 


Program  2:  64  Animator 

Version  by  Kevin  Mykytyn,  Editorial 

Programmer 

Please  refet  to  the  "MLX"  article  in  this  issue 

before  entering  the  following  listing. 


49152 
43156 
49164 
49170 
49176 
49182 

491  a  a 
49194 
49200 
49206 
49212 
49218 
49224 
49230 

492  36 
49242 
49248 
49254 
49260 
49266 
49272 
4927B 
49284 
49290 
49296 
49302 
49308 
49314 
49320 
49326 
49332 
49338 
49344 
49350 
49356 
49362 
49368 
49374 
49380 
49386 
49392 
49398 
49404 
49410 
49416 
49422 
49428 
49434 
49440 
49446 
49452 
4945B 
49464 
49470 
49476 
49482 
49488 
49494 
49500 
49506 
49512 
49518 
49524 
49530 
49536 
49542 
4954B 
49534 
49560 
49566 
49572 
49578 
49584 
49590 
49596 
49602 
49608 
49614 
49620 
49626 


032, 

238, 

203, 

032, 

142, 

203, 

160, 

127, 

185, 

123, 

2f6, 

153, 

064, 

003, 

136, 

016 

247, 

076, 

046, 

192, 

000, 

001, 

001, 

015, 

001, 

012, 

008 

000 

000 

000, 

000 

000, 

000 

000 

000 

000, 

306 

000 

000 

000 

000 

000, 

000 

000 

000 

000 

032 

077, 

192 

169 

000 

141 

02B 

192, 

032 

070 

193, 

032 

044 

193, 

032, 

070 

194 

032 

215 

193, 

032 

033 

197 

162 

255 

032, 

205 

194, 

076 

060 

192 

120, 

169 

127 

141 

013 

220 

169, 

105 

141 

020 

003 

169 

192, 

141 

021 

003 

169 

129 

141, 

026 

208 

169 

027 

141 

017, 

208 

088 

096 

169 

001 

141, 

025 

208 

173 

044 

192 

20B, 

069 

173 

018 

208 

201 

010, 

176 

011 

162 

225 

160 

059, 

169 

083 

141 

018 

208 

208, 

029 

201 

085 

176 

011 

162, 

232 

160 

099 

169 

130 

141, 

018 

208 

208 

014 

162 

239, 

160 

139 

169 

000 

141 

018, 

208 

240 

003 

140 

018 

208, 

152 

160 

012 

153 

001 

208, 

136 

136 

016 

249 

160 

000, 

138 

153 

248 

007 

200 

232, 

192 

007 

208 

246 

173 

013, 

220 

041 

001 

240 

081 

164, 

203 

204 

043 

192 

240 

056, 

140 

043 

192 

185 

129 

235, 

201 

088 

208 

008 

173 

029, 

20B 

073 

128 

141 

,029 

20B, 

201 

089 

208 

008 

,173 

023, 

208 

073 

128 

141 

,023 

20B, 

201 

049 

,144 

022 

,201 

057, 

176 

018 

,056 

174 

,141 

002, 

224 

004 

,208 

010 

,233 

,049, 

160 

007 

,153 

039 

,208 

,136, 

016 

250 

,201 

133 

,208 

,011, 

173 

045 

,192 

240 

,006 

,032, 

019 

193 

,032 

238 

,203 

,076, 

049 

234 

,076 

188 

,254 

,173, 

136 

002 

073 

012 

,141 

136, 

002 

173 

024 

208 

,073 

048, 

141 

024 

208 

173 

,021 

208, 

073 

127 

,141 

021 

,208 

096, 

169 

127 

,141 

021 

,208 

169, 

064 

141 

,016 

208 

,160 

006, 

162 

012 

,185 

047 

,204 

157, 

000 

208 

,202 

202 

,136 

,016, 

245 

096 

,169 

147 

,032 

,210, 

255 

169 

,015 

141 

,033 

,208, 

162 

001 

,160 

002 

,024 

,032, 

240 

255 

,032 

197 

,193 

162, 

006 

160 

,002 

024 

,032 

,240, 

255 

032 

,197 

193 

,162 

011, 

160 

002 

,024 

032 

,240 

255, 

032 

197 

,193 

162 

,004 

160, 

002 

024 

,032 

240 

,255 

169, 

085 

160 

,204 

032 

,030 

171, 

162 

009 

,160 

002 

,024 

032, 

240 

255 

,169 

120 

,160 

204, 

032 

030 

171 

162 

,014 

160, 

002 

024 

032 

240 

,2  55 

169, 

155 

160 

,204 

032 

,030 

,171, 

032 

165 

193 

032 

,181 

193, 

096 

162 

019 

160 

,001 

024, 

032 

240 

,255 

169 

,190 

160, 

204 

032 

030 

171 

,096 

162, 

032 

160 

001 

024 

032 

240, 

255 

169 

116 

160 

205 

03  2, 

030 

171 

096 

169 

007 

141, 

020 

192 

169 

054 

160 

204, 

032 

030 

171 

206 

020 

192, 

208 

244 

096 

162 

019 

160, 

018 

024 

032 

240 

255 

169, 

52  COMPUTEI  August  1985 


49632 
4963S 

49644 
49650 
49656 
49662 
49668 
49674 
49680 
49686 
49692 
49698 
49704 
49710 
49716 
49722 
49728 
49734 
49740 
49746 
49752 
49758 
49764 
49770 
49776 
49782 
49788 
49794 
49800 
49806 
498U 
49813 
49824 
498  30 
49836 
49842 
49848 
49854 
49860 
49866 
49872 
49878 
49884 
49890 
49896 
49902 
49998 
49914 
49920 
49926 
49932 
49938 
49944 
49950 
4995G 
49962 
49968 
49974 
49980 
49986 
49992 
49998 
50004 
50010 
50016 
50022 
50028 
50034 
50040 
50046 
50052 
50058 
50064 
50070 
50076 
50082 
50088 
50094 
50100 
50106 
50112 
50118 
50124 
50130 
50136 
50142 
50148 
50154 
50160 
50166 
50172 


000 

174 

021 

192 

032 

061 

192 

194 

162 

019 

160 

038 

024 

059 

032 

240 

255 

169 

000 

174 

082 

024 

192 

032 

061 

194 

162 

,139 

020 

160 

018 

024 

032 

240 

230 

255 

169 

000 

174 

022 

192 

042 

032 

061 

194 

032 

164 

196 

171 

162 

021 

160 

018 

024 

032 

171 

240 

255 

169 

000 

174 

023 

109 

192 

202 

032 

061 

194 

162 

397 

021 

160 

0  38 

024 

032 

240 

031 

255 

169 

000 

174 

026 

192 

,082 

2  24 

016 

144 

002 

162 

015 

,091 

142 

038 

192 

032 

061 

194 

,193 

173 

038 

192 

009 

016 

141 

,109 

012 

212 

096 

,032 

205 

189 

,036 

169 

032 

032 

210 

255 

096 

,090 

174 

028 

192 

173 

000 

220 

,089 

074 

176 

014 

032 

159 

194 

,213 

202 

016 

002 

,162 

006 

032 

,246 

159 

194 

076 

154 

194 

074 

,171 

176 

016 

032 

,159 

194 

232 

,135 

2  24 

007 

144 

002 

162 

001 

128 

032 

159 

194 

076 

154 

194 

,147 

074 

176 

013 

189 

020 

192 

008 

201 

001 

240 

003 

222 

020 

,037 

192 

076 

154 

194 

074 

176 

222 

013 

189 

020 

192 

201 

021 

,254 

240 

003 

254 

020 

192 

076 

,153 

154 

194 

074 

176 

007 

138 

,117 

072 

032 

225 

194 

104 

170 

,177 

142 

028 

192 

096 

096 

072 

,012 

138 

072 

010 

170 

189 

051 

,022 

205 

133 

251 

189 

052 

205 

,177 

133 

252 

160 

015 

177 

251 

,136 

073 

128 

145 

251 

136 

016 

,159 

247 

,104 

170 

,104 

096 

169 

,050 

001 

,141 

028 

,192 

169 

000 

,209 

160 

,004 

153 

,021 

192 

136 

,094 

016 

,2  50 

096 

,160 

100 

136 

,192 

208 

253 

202 

,208 

248 

096 

,143 

032 

,205 

194 

,173 

000 

220 

,014 

041 

,016 

240 

,246 

096 

032 

,123 

214 

,194 

,169 

,255 

141 

045 

,220 

192 

,141 

,021 

,208 

169 

,000 

,195 

141 

,029 

,192 

,169 

180 

141 

,066 

915 

,  20ff 

,173 

,036 

,192 

,141 

,  24i 

046 

,208 

,173 

,024 

192 

,205 

,074 

021 

,192 

,176 

,003 

238 

,029 

,147 

192 

,173 

,021 

,192 

141 

,022 

,235 

192 

,169 

,000 

,141 

,037 

,192 

,231 

169 

,021 

,056 

,237 

,023 

,192 

,204 

141 

,032 

,192 

,201 

021 

208 

,051 

003 

,238 

,037 

,192 

173 

025 

,186 

192 

,141 

034 

,192 

173 

032 

,032 

192 

,240 

020 

,173 

037 

192 

,128 

208 

,113 

206 

,033 

192 

208 

;240 

108 

,169 

100 

,141 

033 

192 

,029 

206 

,032 

192 

,208 

098 

169 

,197 

021 

,056 

237 

,023 

192 

141 

,224 

032 

,192 

173 

,021 

192 

205 

,119 

024 

192 

240 

,041 

173 

022 

,002 

192 

20  5 

024 

,192 

208 

008 

,145 

173 

021 

192 

141 

022 

192 

,063 

208 

025 

173 

029 

192 

240 

,195 

011 

173 

022 

192 

056 

233 

021 

001 

141 

022 

192 

208 

009 

169 

173 

022 

192 

024 

135 

001 

119 

141 

022 

192 

168 

185 

220 

024 

055 

240 

010 

169 

128 

141 

lai 

004 

212 

169 

129 

141 

004 

023 

212 

IBS 

250 

055 

240 

019 

075 

141 

008 

212 

185 

024 

056 

002 

141 

007 

212 

169 

032 

141 

034 

011 

212 

169 

033 

141 

011 

221 

212 

169 

000 

141 

030 

192 

138 

173 

0  34 

192 

240 

005 

206 

2  50 

034 

192 

208 

060 

173 

025 

098 

192 

056 

233 

011 

016 

008 

184 

2  38 

030 

192 

073 

255 

024 

230 

105 

001 

141 

034 

192 

173 

070 

034 

192 

170 

240 

007 

024 

097 

139 

034 

192 

202 

208 

249 

174 

141 

035 

192 

173 

030 

192 

205 

240 

058 

173 

031 

192 

056 

198 

237 

035 

192 

141 

031 

192 

026 

173 

014 

208 

233 

000 

141 

229 

014 

208 

201 

235 

208 

090 

186 

173 

016 

208 

041, 

128, 

208 

246 

015, 

169, 

085 

141, 

014, 

208, 

110 

173, 

016, 

208, 

009, 

128, 

141, 

159 

if  tt  tf  nr7  tf  Hrr 


%i*L 


IWllttllm;    SPCED      11    KOIE    DURflTlOH  3 

h-...-.iia  ua    |li.!,[,i:i        ^I'li  i  ii         tun. 


"64  Anittiatar"  uses  raster  interrupt 
techniques  to  display  up  to  22  sprites  at 
once. 


173,016, 179 
016,208,237 
074, 196,020 
109,035,072 
173,014,001 
014,208,196 
208,009,150 
208,024,001 
173,016,241 
013,169,087 
173,016,112 
016,208,041 
074,074,081 
025, 192, 224 
192,208,245 
076,142,014 
173,025,248 
033,238,005 
238,025,060 
074,176,204 
045,192, 176 
004,240,116 
032,214,115 
196,032,086 
192,168,103 
255,007 ,140 
040,195,108 
219,141,135 
219,173,039 
011  ,072,253 
141,069,124 
024,105,244 
169,032,104 
201,010,220 
049, 141 ,029 
233,010,180 
007,096,078 
007,169,156 
096,173,238 
144,016,063 
050,007,219 
009,048,206 
201 ,010,248 
049,141 ,083 
233,010,214 
007,096,112 
007,169,190 
096,032,131 
208,003,230 
067,208,207 
176,033,019 
169,056,126 
203,198,234 
160,021,090 
055,153,052 
056,136,238 
073,208,152 
251,169,010 
064,133,138 
254,169,115 
192,170,037 
177,253,052 
249,165,056 
133,251,088 
133,252,141 
064,133,016 
000,133,156 
162,020,188 
189,024,165 
055,232,216 


50178 

:016, 

50184 

:208, 

50190 

:206, 

50196 

:173, 

50202 

=  192, 

50208 

:  208 , 

50214 

:20B, 

50220 

:128, 

50226 

;201, 

50232 

;208, 

50238 

:0ia. 

50244 

;208, 

50250 

:234, 

50256 

1074, 

50262 

r240. 

50268 

:049, 

50274 

rl96. 

50280 

:192, 

50286 

:027, 

50292 

:192, 

50298 

:019, 

50304 

:173, 

50310 

:003, 

50316 

:194, 

50322 

:235, 

50328 

:024, 

50334 

:141, 

50340 

:169, 

50346 

:070, 

50352 

1025, 

50358 

:016, 

50364 

:007, 

50370 

:001, 

50376 

:141, 

50382 

;144, 

50388 

:070, 

50394 

:009, 

50400 

:009, 

50406 

:032, 

50412 

:022, 

50418 

:072, 

50424 

:104, 

50430 

:141, 

50436 

:144, 

50442 

:050, 

50448 

:009, 

50454 

:009, 

50460 

:032, 

50466 

:228, 

50472 

:076, 

50478 

:038, 

50484 

:I69, 

53490 

:133, 

50496 

!252, 

50502 

1169, 

50508 

!250, 

50514 

1016, 

50520 

:096, 

50526 

:061, 

50532 

:253, 

50538 

:022, 

50544 

S240, 

50550 

!l45. 

50556 

:25l. 

50S62 

tl65. 

50568 

;165, 

50574 

1253, 

50580 

:254, 

50586 

(189, 

50592 

1056, 

208 

208 

068, 

041 

127 

141, 

014 

208 

076, 

031 

192 

024, 

141 

031 

192, 

105 

000 

141, 

010 

173 

016, 

141 

016 

208, 

085 

208 

020, 

041 

128 

240, 

141 

014 

208, 

041 

127 

141, 

173 

000 

220, 

176 

016 

173, 

054 

206 

027, 

206 

025 

192, 

074 

176 

018, 

201 

021 

240, 

192 

208 

028, 

076 

,142 

196, 

169 

000 

141, 

136 

002 

201, 

032 

019 

193, 

096 

032 

164, 

196 

173 

022, 

105 

224 

141, 

255 

011 

076, 

000 

141 

069, 

219 

141 

071, 

192 

056 

233, 

014 

169 

045, 

104 

073 

255, 

076 

204 

196, 

069 

0^7 

104, 

016 

072 

169, 

007 

104 

056, 

048 

141 

071, 

048 

141 

070, 

141 

071 

007, 

192 

201 

020, 

169 

050 

141, 

056 

233 

020, 

051 

007 

096, 

016 

072 

169, 

007 

104 

056, 

048 

141 

051, 

048 

141 

050, 

141 

051 

007, 

255 

201 

069, 

184 

199 

201, 

032 

002 

204, 

064 

133 

251, 

2  52 

032 

126, 

032 

126 

203, 

000 

153 

220, 

055 

153 

024, 

244 

096 

201, 

169 

128 

133, 

133 

252 

169, 

169 

061 

133, 

056 

237 

022, 

071 

160 

063, 

251 

136 

016, 

056 

233, 

064, 

2  52 

233, 

000, 

253, 

056, 

233, 

165, 

2  54, 

233, 

202, 

208, 

218, 

250, 

055, 

072, 

072, 

189, 

220, 

50598  1157,220,055,104,157,024,115 

50604  1056,104, 15 7, 250, 05 5, 202, 228 

50610  1202,236,022,192,176,226,208 

50616  1096,201,068,208,100,173,006 

50622  1022,192,032,165,199,165,197 

50623  s 251, 024, 105, 064, 133, 2 53, 002 
50634  1 165 , 2  52 , 105 , 000 , 133 , 254 ,087 
50640  1169,02  2,056,237,022,192,138 
50646  1170,240,072,160,063,177,072 
50652  1253,145,2  51,136,016,249,246 
50658  1165,251, 024 , 1 05 , 064 , 1 33 , 200 
50664  1251,165,2  52,105,000,133,114 
50670  1252,165,253,024,105,064,077 
50676  1133,253,16  5,254,105,000,130 
50682  1133,2  54,202,016,2^8,174,223 
50688  1022,192,23  2,189,250,055,172 
50694  I  072 , 189 , 024 , 056 , 072 , 189 , 096 
50730  1  220, 955,  202,1 57, 22(?(, ass.  153 
50706  1104,157,024,056,104,157,108 
50712  1250,055,232,232,224,021,014 
50718  1144,227,096,201,083,208,221 
50724  1044,032,146,199,032,063,040 
507  30  1199,169,220,133,253,169,161 
50736  1055,13  3,2  54,173,024,192,111 
50742  1032,165,199,165,251,024,122 
50748  !  105 , 064 , 170 , 16  5 , 2  52 , 105 , 153 
50754  1000,168,169,2  53,032,216,136 
50760  1255,032,233,198,104,104,230 
50766  1 076 , 046 , 192 , 201 , 076 , 208 ,109 

50772  1019,032,146,199,032,063,063 

50773  1199,169,000,032,213,255,190 
50784  103  2,23  3,198,104,104,076,075 
50790  1046 , 192 , 201 , 036 , 208 ,099 ,116 
50796  1032,146,199,169,001,162,049 
50802  1 008 , 160 , 000 , 032 , 186 , 255 , 243 
5080S  : 169 , 008 ,162,059,160, 206 , 1 16 
50814  I  032 , 189 , 255 , 032 , 192 , 255 , 057 
50820  1032,233,198,162,001,032,022 
50826  1 198 , 255 , 032 , 207 , 255 ,032 , 093 
50832  1207,255,169,013,032,210,006 
50838  1255,032,207,255,032,207,114 
50844  1255,032,233,198,176,032,058 
50850  1 032 , 207 , 255 , 170 , 032, 207 , 041 
50856  1255,032,205,189,169,032,026 
50862  : 032 , 210, 255 , 032 , 207 , 255 , 141 
50868  1240,220,032,210,255,165,022 
50874  1203,201,064, 208, 250, 076, 164 
50880  117  7,198,169,001,032,195,196 
50886  1 255 , 032 , 204 , 255 , 104, 104 ,128 
50892  1076 ,046 , 192 , 201 , 081 ,208 , 240 
50898  : 006 , 032 , 002 , 204 , 176 , 001 ,119 
50904  1000,096,169,000,160,206,079 
50910  1032,030,171,032,228,255,202 
50916  1201,013,208,249,096,141,112 
50922  1038,192,024,165,144,240,013 
50928  1074 , 041 , 1 28 , 240 , 020 , 169 , 144 
50934  1099 , 160 , 206 ,032 , 030 , 171 ,176 
50940  1169,001,032,195,255,032,168 
50946  : 218, 198, 104, 104, 076, 202, 136 
50952  1198,169,015,162,008,168,216 
50958  1032, 136,255, 169, 000, 032, 176 
50964  1189,255,032,192,255,162,081 
50970  1015,032,198,255,169,013,196 
50976  1032,210,255,03  2,207,255,255 
50932  . 072 , 032 , 210 , 255 , 104 ,201 , 144 
50988  1013,208,244,169,015,032,213 
50994  « 195 , 255 , 032 , 204 , 255 , 032 , 255 
51000  1218,198,056,173,033,192,163 
51006  1096, 169,210, 160,205,032,166 
51012  1030,171,03  2,249,171,173,126 
51018  1 000 , 002 , 208 , 005 , 104 , 104 ,241 
51024  1076,076,198,160,255,200,021 
51030  1 ISS , 000 , 002 , 1 53 , 038 , 002 , 210 
51036  1208,247,162,005,189,060,195 
51042  1206,157,032,002,200,202,129 
51048  1016,246,152,162,032,160,104 
51054  : 002 , 032 , 189 , 255 , 169 , 229 , 218 
51060  1160,205,032,030,171,032,234 
51066  t  2  28 , 25 5 , 201 , 084 , 208 , 004 , 078 
5107  2  :162 , 001 , 208 , 006 , 201 ,068 ,006 
51078  1 208 , 241 , 162 , 008 , 169 , 002 , 1 56 
51084  1160,001,03  2,136,255,096,102 
51090  1032,091,255,032,138,255,181 
51096  1169,024,141,024,208,169,119 
51102  1251,160,205,032,030,171,239 
51108  1096,024,105,2  24,133,251,229 
51114  1169,000,133,252,162,006,124 
51120  1006,251,038,252,202,208,109 
511 26  1 249 , 096 , 169, 001 , 141 , 044 , 114 
51132  1192,169,055,141,011,208,196 
51138  1141,013,208,169,035,141,133 


August  1 985     COMPUTE!      53 


51144  1012,208,169,255,141,010,227 

511 50  I  203 , 169 , 224, 141 , 021 , 20B, 153 

51156  1169,195,141,016,208,169,086 

51162  :020 , 141 , 0X4 , 20B , 169 , 085 , 087 

51 168  1141,015,208,169,084,133,206 

51174  s247, 169, 004, 133, 248, 169, 176 

51180  : 020, 141, 000, 208, 141, 802, 236 

51 186  ! 208 , 169 , 165 , 141 , 001 , 208, 110 

51192  »169, 190, 141, 003, 208, 169, 104 

51198  1013,141,248, 007, 169, 014, 078 

51204  8141,249,007,032,170,202,037 

51210  1172,022,192,185,220,055,088 

51216  :240, 020, 17 3, 021, 208, 009, 17 5 

51222  : 001, 141, 021, 208, 169, 128, 178 

51228  : 141, 004, 2 12, 169, 129, 141, 056 

51 234  : 004 , 2 12 , 208, 008 , 173 , 021 , 148 

51240  1208,041,254,141,021,208,145 

51246  : 172, 022, 192, 185, 250, 055, 154 

51252  1240,030,141,008,212,185,100 

51258  . 024 ,056 , 141 , 007 , 212 , 169 , 155 

51264  1032,141,011,212,169,033,150 

51270  : 141, 011, 212, 173, 021, 208, 068 

51276  1009,002,141,021,208,076,021 

51282  :092, 200, 173,021,208,041,049 

51288  {253,141,021,208,03  2,194,169 

51294  t 202, 032, 118, 203, 169, 084, 134 

51300  1133,253,133,141,169,216,121 

51306  t 133, 254, 133,142,173,022,195 

51312  5192,024,105,224,141,255,029 

51 318  !007 , 0S6 , 233 , 001 ,141 , 253 ,041 

51324  ! 007, 024, 105, 002, 141, 254, 145 

51330  1007,173,022,192,032,165,209 

51336  {199,165,2  51,133,139,165,164 

51342  12  52,133,140,169,000,141,209 

51348  1038 , 192 , 169 , 003 ,141 ,039 ,218 

51354  1192,172,038,192,177,251,152 

51360  1140,038,192,160,000,162,084 

51366  1 008 , 010, 144 , 006 , 072 , 169 , 063 

SI  3 72  (001,145,253,104,230,253,134 

51 378  ! 208 , 002 , 230 , 254 ,202 , 208 , 002 

51384  1238,238,038,192,173,038,077 

51390  1 192 , 201 , 064 , 240 , 021 , 206 , 090 

51396  1039,192,208,211,165,253,240 

51402  1024,105,016,133,253,165,130 

51408  1254,105,000,133,254,076,006 

51414  . 150 ,200 , 165 , 247 , 133 , 249 ,078 

51420  1165,248,133,250,160,000,152 

51426  1177,247,073,128,145,247,219 

51432  .162,128,032,205,194,073,002 

51438  1128,145,247,173,000,220,127 

51444  1074,176,015,072,165,247,225 

51450  1056 , 233 , 040 , 133 , 247 , 165 , 100 

51456  1248,233,000,133,248,104,198 

51462  1074 , 176 , 015 , 072 , 165 , 247 , 243 

51468  1024,105,040,133,247,165,214 

51474  1248 , 105 , 000 ,133, 248 , 104 , 088 

51480  1074,176,015,072,165,247,005 

51486  1056 , 233 , 091 , 133 , 247 , 165 , 097 

S1492  1248,233,000,133,246,104,234 

51498  t 074 , 176 , 015 , 072 , 165 , 247 , 023 

S1S04  1024,105,001,133,247,165,211 

51510  1248,105,000,133,248,104,124 

51516  1074,176,038,165,249,024,018 

S1522  .105,000,133,076,165,250,029 

51528  1105,212,133,079,173,041,047 

51534  1192,208,012,169,001,141,033 

51540  .041,192,177,078,073,001,134 

51546  .141,040,192,173,040,192,100 

51552  .145,078,076,106,201,169,103 

51558  .000,141,041,192,177,247,132 

51564  .201,032,208,008,165,249,203 

51570  .133,247,165,250,133,248,010 

51576  .032,228,255,201,082,208,102 

51SB2  .013,169,000,141,044,192,173 

51588  1169,129,141,026,208,076,113 

51594  1049 , 192 , 201 , 147 , 208 , 003 ,170 

51600  .032,170,202,201,043,208,232 

51606  1013 , 173 ,022 , 192 , 201 ,021 , 004 

51612  .240,006,238,022,192,076,162 

51618  1 010 , 200 , 201 , 045 , 208 , 013 , 071 

51624  117  3,022,192,201,001,240,229 

5 1630  1 006 , 206 , 022 ,192 ,076 , 010 ,174 

51636  .200,201,073,208,014,160,012 

51642  .063 , 177 , 1 39 , 073 , 255 , 145 , 014 

51648  1139,136,016,247,076,092,130 

51654  1200,201,136,208,010,163,089 

51660  .063,177,139,153,122,206,040 

51666  1136,016,248,201,140,208,135 

51672  1013,160,063,185,122,206,197 

51678  .145,139,136,016,248,076,214 

51684  1092,200,201,145,208.011,061 

54  COMPUTEI  August  1985 


51690 
51696 

51702 
S170S 
51714 
51720 
51726 
51732 
517  38 
51744 
517S0 
51756 
51762 
51768 
51774 
51780 
51786 
51792 
51798 
51804 
51810 
51816 
51822 
51828 
51834 
51840 
51846 
51852 
51858 
51864 
51870 
51876 
51882 
51888 
51894 
51900 
51906 
51912 
51918 
51924 
51930 
51936 
51942 
51948 
51954 
51960 
51966 
51972 
51978 
51984 
51990 
51996 
52002 
52008 
52014 
52020 
52026 
52032 
52038 
52044 
52050 
52056 
52062 
52068 
52074 
52080 
52086 
52092 
52098 
52104 
52110 
52116 
52122 
52128 
52134 
52140 
52146 
52152 
52158 
52164 
52170 
52176 
52182 
52188 
52194 
52  200 
52206 
52212 
52218 
52224 
52230 


.162 

003 

032 

061 

203 

202 

129 

.208 

250 

076 

092 

200 

201 

243 

1017 

208 

011 

162 

003 

032 

167 

1091 

203 

202 

208 

250 

076 

002 

1092 

200 

201 

029 

208 

027 

247 

:160 

002 

177 

139 

106 

136 

216 

1136 

162 

003 

177 

139 

106 

225 

.145 

139 

200 

202 

208 

247 

137 

1200 

200 

192 

066 

144 

234 

038 

1076 

092 

200 

201 

157 

208 

198 

■  029 

160 

000 

177 

139 

042 

073 

1200 

200 

162 

003 

177 

139 

157 

1042 

145 

139 

136 

202 

208 

154 

i247 

200 

200 

200, 

200 

192 

015 

1064 

144, 

232 

076, 

092 

200 

102 

1201 

068, 

308 

014, 

172, 

022, 

241 

(192 

185, 

220 

055, 

073, 

001, 

032 

|153 

220, 

055 

076, 

010, 

200, 

026 

tl73 

141, 

002 

201, 

004, 

240, 

079 

1062 

164, 

203, 

185, 

129, 

235, 

046 

1205 

060, 

003 

240, 

052, 

141, 

031 

1060 

003, 

201 

049, 

144, 

045, 

094 

.201 

058, 

176 

041, 

174, 

022, 

014 

1192 

056, 

233 

049 

168 

185 

231 

.050 

206, 

157 

250, 

055, 

185, 

001 

.041 

206, 

157 

024, 

056 

173 

017 

.141 

002, 

240 

014, 

189, 

024, 

232 

.056 

010 

157 

024 

056 

189 

120 

.250 

055 

042 

157 

250 

055 

187 

1076 

010 

200 

201 

092 

208 

171 

1003 

076 

010 

200 

032 

225 

192 

i202 

160 

000 

076 

216 

200 

2  50 

tl69 

065 

160 

205 

032 

030 

063 

.171 

169 

021 

141 

020 

192 

122 

il69 

068 

160 

205 

032 

030 

078 

1171 

206 

020 

192 

208 

244 

205 

1162 

012 

160 

033 

024 

032 

105 

i240 

255 

169 

000 

174 

022 

036 

il92 

032 

205 

189 

169 

032 

001 

1032 

210 

255 

096 

160 

000 

197 

1177 

139 

041 

127 

145 

139 

218 

.096 

16  5 

141 

133 

163 

165 

063 

1142 

133 

164 

169 

000 

141 

211 

.038 

192 

169 

003 

141 

039 

050 

1192 

160 

007 

169 

000 

141 

143 

.042 

192 

024 

177 

163 

041 

119 

1015 

240 

001 

056 

110 

042 

206 

1192 

136 

016 

,242 

172 

038 

032 

tl92 

173 

042 

192 

145 

139 

125 

1165 

163 

024 

105 

008 

133 

102 

.163 

165 

164 

105 

000 

133 

240 

1 164 

238 

038 

192 

173 

038 

103 

.192 

201 

064 

208 

001 

096 

02B 

.206 

039 

192 

208 

198 

165 

024 

1163 

024 

105 

016 

133 

163 

138 

tl65 

164 

105 

000 

133 

164 

015 

1076 

238 

202 

160 

000 

177 

143 

Il39 

141 

038 

192 

136 

200 

142 

1200 

192 

064 

208 

008 

173 

147 

1038 

192 

136 

136 

145 

139 

094 

.096 

177 

139 

136 

145 

139 

146 

.076 

069 

203 

160 

062 

177 

067 

.139 

141 

038 

192 

200 

136 

172 

.136 

016 

007 

173 

033 

192 

150 

.200 

145 

139 

096 

177 

139 

234 

i200 

145 

139 

,076 

099 

203 

206 

tl69 

000 

133 

,251 

169 

216 

032 

il33 

252 

162 

,004 

160 

000 

067 

1152 

145 

251 

,136 

208 

251 

249 

.230 

252 

202 

,203 

243 

096 

087 

1120 

165 

001 

,041 

251 

133 

085 

.001 

169 

000 

,133 

251 

169 

103 

1032 

133 

252 

,169 

000 

133 

105 

i253 

169 

,208 

,133 

254 

162 

059 

1003 

160 

,000 

,177 

253 

145 

141 

1251 

,136 

,208 

,249 

,230 

,252 

218 

1230 

,2  54 

,202 

,208 

,240 

,165 

197 

1001 

,009 

,004 

,133 

,001 

,088 

,164 

.160 

,007 

,185 

,100 

,205 

,153 

,232 

.008 

,033 

,185 

,108 

,205 

,153 

,120 

1008 

,037 

,136 

,016 

,241 

,169 

,041 

.024 

,141 

,024 

,208 

,160 

,023 

,020 

il69 

f   000 

,153 

,000 

,212 

,136 

,116 

1016 

,250 

,169 

,015 

,141 

,024 

,067 

1212 

,169 

,050 

,141 

,001 

,212 

,243 

.169 

,019 

,141 

,005 

,212 

,096 

,106 

!l69 

,032 

,160 

,000 

,153 

,000 

,240 

1008 

,153 

,000 

,009 

,153 

,000 

,055 

1010 

,153 

,000 

,011 

,136 

,208 

,000 

.241 

,096 

,032 

,038 

,204 

,169 

,012 

.067 

,160 

,206 

,032 

,030 

,171 

,160 

52236 
52242 
52248 
52254 
52260 
52266 
52272 
52278 
52294 
52290 
52296 
52302 
52308 
52314 
52320 
523  26 
52332 
52338 
52344 
52350 
52356 
52362 
52368 
52374 
52380 
52386 
52392 
52398 
52404 
52410 
52416 
52422 
52428 
52434 
52440 
52446 
52452 
52458 
52464 
52470 
52476 
52482 
52488 
52494 
52500 
52506 
52512 
52518 
52524 
52530 
52536 
52542 
52548 
52554 
52560 
52566 
52572 
52578 
52584 
52590 
52596 
52602 
52608 
52614 
52620 
52636 
52632 
52638 
52644 
52650 
52656 
52662 
52668 
52674 
52680 
52686 
52692 
52698 
52704 
52710 
52716 
52722 
527  28 
52734 
52740 
52746 
52752 
52758 
52764 
52770 
52776 


.032,228,255 

201,089 

024,073 

.240,005,201 

078,208 

244,226 

.056,008,032 

038,204 

169,019 

1083,160,206 

032,030 

171,200 

.040,096,162 

015,160 

014,011 

1024,032,240 

255,096 

048,22  5 

.088,128,168 

208,248 

033,153 

.144,182,163 

163,163 

181,026 

1017,157,157 

157,157 

157,094 

1182,032,032 

032,191 

017,030 

1157,157,157 

157,157 

182,015 

1175,175,175 

181,145 

145,050 

.000,144,032 

032,049 

032,117 

.032,032,032 

050,032 

032,044 

1032,032,051 

032,032 

032,051 

1032,052,032 

032,032 

032,058 

1053,032,032 

032,032 

054,087 

1032,032,032 

032,055 

000,041 

1032,032,056 

032,032 

032,030 

.032,057,032 

032,032 

032,087 

1049,043,032 

032,032 

049,118 

1049,032,032 

032,049 

050,126 

.032,032,032 

049,051 

032,116 

1032,032,049 

052,000 

032,091 

1049,053,032 

032,032 

032,130 

.049,054,032 

032,032 

049,154 

1055,032,032 

032,049 

056,168 

.032,032,032 

049,057 

032,152 

.032,032,050 

048,032 

032,150 

1032,050,049 

000,144 

018,223 

.083,084,065 

082,064 

073,151 

1078,071,032 

080,073 

067,087 

1084,085,082 

069,146 

144,046 

.032,032,032 

032,069 

078,229 

1068,073,078 

071,032 

080,106 

1073,067,084 

085,082 

069,170 

.032,032,013 

029,080 

073,231 

.067,084,085 

082,069 

032,141 

.078,085,077 

066,069 

082,185 

1032,032,032 

032,032 

032,182 

1079,086,069 

082,065 

076,197 

.076,032,083 

080,069 

069,155 

1068,032,032 

032,013 

029,214 

1083,087,073 

084,067 

072,224 

1073,078,071 

032,083 

080,181 

1069,069,068 

032,032 

032,072 

.032,032,078 

079,084 

069,150 

.032,068,035 

082,065 

084,198 

.073,079,078 

032,032 

032,114 

1000,249,006 

2  49,006 

033,081 

.007,073,007 

013,0^7 

053,216 

1007,093,007 

147,017 

000,077 

1013,146,144 

029,029 

029,202 

.029,033,033 

033,033 

033,012 

1033,033,033 

033,033 

033,022 

.033,033,033 

033,033 

033,028 

1033,033,033 

033,033 

033,034 

.033,000,000 

126,126 

126,253 

1126,126,126 

000,255 

129,098 

.129,129,129 

129,129 

255,242 

.017,028,018 

069,146 

068,206 

1073,084,032 

032,032 

032,151 

.032,032,018 

076,146 

079,255 

.065,068,032 

032,032 

032,139 

.032,032,018 

083,146 

065,004 

.086,069,032 

032,032 

032,173 

.032,032,018 

067,146 

076,011 

1069,065,082 

032,065 

076,035 

.076,032,018 

036,146 

067,027 

.065,084,065 

076,079 

071,098 

1032,032,018 

073,146 

078,043 

.083,069,082 

084,032 

032,052 

1032,032,018 

068,146 

069,041 

.076,069,084 

069,032 

032,044 

.032,032,018 

081,146 

085,082 

.073,084,144 

000,017 

017,029 

1029,069,078 

084,069 

082,111 

1032,070,073 

076,069 

078,104 

1065,077,069 

013,000 

017,209 

1017,032,018 

084,146 

065,080 

.030,069,032 

079,082 

032,098 

1018,068,146 

073,083 

075,193 

1013,013,000 

147,005 

017,187 

1017,000,013 

017,032 

072,149 

1073,084,032 

082,069 

084,172 

.085,082,078 

032,084 

079,194 

.032,067,079 

078,084 

073,173 

.078,085,069 

000,068 

032,148 

1085,077,000 

078,079 

084,175 

1069,000,032 

032,032 

032,231 

1000,097,104 

143,048 

143,063 

S2782 
52788 
52794 
52800 
52806 
52812 
52818 
52824 
5  28  30 
52836 
52842 
52848 
52854 
52860 
52866 
52872 
52873 
52884 
52890 
52896 
52902 
52908 
52914 
52920 
S2926 
52932 
52938 
52944 
52950 
52956 
52962 
52968 
52974 
52980 
52986 


!024 

!010 

:000 
t073 
1069 
:0e3 

1 00a 

S032 
t032 
:013 
1067 
:032 
:078 
•.009 

•  000 
j255 
sl29 
■  000 

•  255 
i255 
S255 
t255 
1000 
:000 
1000 
1000 
1000 
:000 

tsm 

•.000 
1003 
1007 
;001 
:000 
:002 


,210, 
,011, 
,036, 
,046, 
,032, 
,085, 
,032, 
,032, 
,032, 
,032, 
,069, 
,080, 
,084, 
,004, 
,016, 
,192, 
,012, 
,014, 
,254, 
,254, 
,254, 
,240, 
,000, 
,000, 
,006, 
,004, 
,004, 
,004, 
,004, 
,004, 
,244, 
,248, 
,224, 
,000, 
,013, 


195,000 
012,014 
048,058 
042,028 
089,079 
082,069 
032,032 
032,032 
000,073 
068,069 
032,078 
082,069 
013,000 
016,000 
004 ,  000 
013,000 
064,066 
124,000 
127,255 
127,255 
063,255 
003,255 
000,000 
000,000 
000 , 000 
128,000 
000,000 
000,000 
000 , 000 
000,001 
000,007 
000,003 
000,000 
000,000 
013,013 


,008, 

,015, 

,065 

,065, 

,085, 

,063, 

,032, 

,032, 

,048, 

,086 

,079, 

,083 

,000, 

,008, 

,032, 

,176. 

,002, 

,062, 

,254, 

,254, 

.252, 

,192, 

,000, 

,004 

,005, 

,004, 

,004, 

,004, 

,004, 

,228, 

,252, 

,240, 

,000, 

,000, 

,013, 


009,236 

016,130 
078,087 
082,144 
032,200 
144,090 
032,242 
032,024 
013,036 
073,185 
084,003 
069,015 
032,069 
008,160 
003,185 
048,052 
112,015 
127,219 
127,146 
127,152 
015,236 
000,093 
000,178 
000,188 
000,201 
064,140 
000,210 
000,216 
000,222 
300,197 
000,220 
000,218 
000,207 
000,244 
013,061 


Program  3:  Atari  Animator, 
Part  1 

Version  by  Kevin  Mykytyn,  Editorial 

Programmer 

Pleas©  refer  to  "COMPUTEI's  Guide  to  Typing 

In  Programs"  before  entering  ttiese  listings. 

1(0  GRAPHICS  0IPDKE  7S2,liP 
RINT  "tCLEARXa  DDMN> 
tl2  8PACES>PLEftBE  WAIT": 
PRINT  "<DOWN> 
{7  8PACE81THE  SCREEN  MI 
LL  BLANK  " 
OL  1  CH~0iFOR  A-29000  TO  293 
66tREAD  BiPOKE  A,6lCH-C 
H  +  BlNEXT  AlIF  CHO4301H 
THEN  PRINT  "ERROR  IN  D 
ATA" I  END 
fC  2  RUN  "DlPART2" 
EOA  DATA  169,3,141,242,6,16 

9,e,  141,243,6 
CBS  DATA  165,  BB,  133,205,  16S 

,B9, 133,206,  169,0 
lt>6     DATA     141,241,6,169,0,14 

1,240, 6, 160,7 
M7    DATA    56,177,205,201,12, 

240, 1.24, 110,240 
NNB    DATA    6,136,16,242,173,2 

40,6, 174,241,6 
IF9    DATA    157,8,96,32,190,11 

3, 173,241,6,24 
IF  10    DATA     105,8,141,241,6,2 

01,90, 176,47,206 
Htll     DATA    242,6,208,39,169, 

3, 141,242,6,32 
i)H12    DATA     190,113,32,190,11 

3,  173,241,6,56,  233 
Nils    DATA    25,141,241,6,206, 

243,6, 208, 14, 169 
H(14    DATA    8,141,243,6,173,2 

41,6,24, 105, 16 
l)P15    DATA    141,241,6,24,144, 

163, 104,96, 169,205 
M16    DATA    24,105,8,133,203, 

165,206, 105,0, 133 
Mt  17    DATA    206,96,165,20,197 

,20,240,252,  104,  169 
tBlB    DATA     170,141,49,114,16 
9,34, 141,59, 114,  169 


"Atari  Animator"  lets  you  create  car- 
toons in  128  different  colors. 

H 19    DATA    154,141,71,114,10 

4, 104, 10, 170, 189, 139 
PI  20    DATA     114,133,203,232,1 

89, 139, 114, 133,204, 104 
UZl     DATA    141,242,6,48,20,1 

04,24, 109,244, 6 
M.22    DATA     141,244,6,173,246 

,6, 109,242,6,  141 
HI23    DATA    246,6,24,144,31,7 

3,255,24, 105, 1 
NN24    DATA     141,242,6,104,141 

, 245,6, 173,244,6 
LI  25    DATA    56,237,245,6,141, 

244,6, 173,246,6 
HK  26    DATA    237,242,6,141,246 

, 6, 162,3, 160,7 
Hit  27    DATA    177,203,153,170,9 

4. 136. 16.248. 160. 15 

FJ  28    DATA     177,203,153,42,95 

, 136, 192,8, 176,246 
HN  29  DATA  160,23,177,203,15 

3. 170.95. 136. 192. 16 

JQ  30  DATA  176,246,165,203,2 

4, 105,24, 133,203, 165 
CII31     DATA    204.105,0,133,204 

,  173,49,  114,24,  105 
NP32     DATA    8,141,49,114,173, 

59, 114, 105,8, 141 
IIL  33    DATA    59,114,173,71,114 

,24,105,8,141,71 
DI  34    DATA     114,202,208,180,1 

7S,-246,6,  14  1  ,  1,208 
BO  35    DATA    24,105,8,141,2,20 

8,24, 105,8, 141 
ffl 36    DATA    3,208,96,8,72,8,7 

2,80,72, 152 
If  37    DATA    72,224,72,40,73,1 

12,73, 184,73,8 
KKSB    DATA    B0,  80,  B0,  152,60,2 

24,80,40,81,  112 
KB39    DATA    81,184,81,8,86,80 

,88, 152,88,224 
11040    DATA    88,40,69,  1  12, B9,  1 

84, B9 

Program  4:  Atari  Animator, 
Part  2 

PJ  10  POKE  559,0iBO8UB  10001 
BOBUB  730I8O8UB  9401  BR 
APHIC8  0iPaKE  752,liBD 
SUB  2801 A-USRC1535> 

U 20  BOBUB  6B0tSGSUB  4601  GO 
TO  20 

JK  30  R-0ITRAP  120I8OSU8  165 
0IOPEN  *1, 6,0, "Dt t. *" 

Cn  40  INPUT  »1  ,BOX«lPRINT  BO 
XtlSOTO  40 

PB  50  TRAP  120iX-NUMBER(l>  :G 
08UB  160IFA-SA1 X-NUMBE 
R(4)+liGDBUB  160 

DP  60  FAH-INT(FA/256)  iFAL-FA 
-FAHt256iBAH-INT(BA/25 
6> I SAL-8A-BAH«2S6 

EC  70  GOBUB  1701  IF  FN«>""  TH 
EN  110 


IK  90 

HP 

100 

PK 

110 

HI 

120 

K  180 

IK  190 

IS  200 

BN210 

FP  220 

E6  230 

He  240 

MB  250 

DF  75  IF  DEV«-"Ci  "  THEN  PRIN 
T  "tDaWN>PREBB  RECORD 
AND  PLAY  ON  TAPE" 
LH  80  OPEN  ttl,B,0,FN«iPUT  ttl 
,FALiPUT  #l,FAHiPUT  ttl 
.BALiPUT  #1,SAH 
FOR  A-FA  TO  SA 

PUT  •! , PEEK(A> iNEXT  A 

■CLOSE  ttl 

QOSUB  16701  RETURN 

TRAP  327671  IF  PEEK (19 

5><>136  THEN  PRINT  " 

C3  DDWN>5YSTEM  ERROR 

"(PEEK (195) 
BC  130  PRINT  "<DOWN>HIT  ANY 

KEY  TO  CONTINUE"! POKE 
764, 255 
Nl  140  IF  PEEK  <764> -255  THEN 

140 
AC  150  GOBUB  16701  CLOSE  «liR 

ETURN 
NC  160  Y-X-liSA- (X-(INT<Y/7) 

*7)  )«72-KINT(Y/7)  )  *20 

4B-i-lB36ei  RETURN 
AB  1 70  DN»-  "  "  I  FN*-  "  "  1  BOBUB  1 

6501PRINT  "{4  DDWN>EN 

TER  FILENAME" 

INPUT  DN«I IF  DN»-""  T 

HEN  240 

PRINT  "<3  DOMN>TAPE  0 

R  DISK"! POKE  764,255 

IF  PEEK(764)-4S  THEN 

DEV*-"Ci "iBOTO  230 

IF  PEEK (764) -SB  THEN 

DEV»-"D: ":SOTO  230 

GOTO  200 

FN«(3,LEN(DN«>+3>-DN« 

lFN«(l,2)>0EV« 

RETURN 

TRAP  120ieOSUB  1701  IF 
FN*-""  THEN  110 
1(1255  IF  DEV*-"Cl"  THEN  PRI 

NT  "(D0WN>PRES8  PLAY 

ON    TAPE" 
HP  260    OPEN    «1  ,  4,0,FN«l6ET    tt 

l,FALi8ET  ttl.FAHiBET 

ttl,SALiBET  ttl,8AH!FA- 

FAL-<-256*FAHi  8A-8AL-I-2S 

6tBAH 
(F  270  FOR  A-FA  TO  8A  +  64iBET 
•l,BlPOKE  A,BiNEXT  A 

IBOSUB  1670ICLO8E  #l! 

RETURN 
DA  280  BOX*-"  {3  NXDOMN} 

t4  LEFT>{B> 

{3  SPACES} {V> {DOMN> 

tS  LEFT}{B> 

{3  SPACES} <V> {DDWN> 

tS  LEFT}tB} 

{3  SPACES} {V} {DOWN} 

{4  LEFT} {3  H}t4  Up} 

{RIGHT}" 
DJ  290  PRINT  "{CLEAR}" 
00  300  FOR  A-0  TO  12  STEP  6i 

POSITION  2, A 
HP  310  FOR  B-1  TO  7iPRINT  BO 

X«)>NEXT  B 
BF  320  NEXT  A 
BH  330  POSITION  4,  Si  PRINT  "1 

C4  8PACE8}2 

{4  8PACE8}3 

{4  SPACES}4 

{4  SPACES}5 

{4  8PACES}6 

{4  SPACES}?" 
DJ  340  POSITION  4,lllPRINT  " 

8{4  SPACES}9 

{4  SPACES} 10 

{3  SPACES} 11 

{3  SPACES} 12 

{3  SPACES} 13 

C3  SPACES} 14" 
i:il350  POSITION  4,17iPRINT  " 

15(3  SPACES} 16 

August  1985     COMPUTEI     65 


{3  BPACeS>17 
C3  SPACES>18 
C3  8PACES>19 
(3  SPACES}20 
t3  8PACES>21" 


0)360 

E"-9iF0R    B-0     TD    30    ST 

EP    SiE-e  +  "? 

|;E370 

FOR     A-1     TD     13     STEP     6l 

CHAR-33 

11380 

FOR    D-0    TO    2IPQBITI0N 

3+B,fl+D 

Fl  390 

FOR    C-0    TO    2l PRINT    CH 

R«  (CHAR+C-KE)  1 

O£400 

NEXT    CiPRINT     "tDDWN> 

£3    LEFTJ "( 1 CHAR-CHAR+ 

3 

NEXT    DlNEXT    AlNEXT    B 

III  410 

HK  420 

POSITION    l,19i PRINT     » 

START    PICTURE 

t7    SPACE8>END    PICTURE 

EB430 


?1  440 

HJ  450 

Ml  460 

BK  470 


EJ  480 
C8  490 
EE500 

C)S10 

III  520 

eN530 

DN  S40 

DD  550 
W  560 

KL  S70 
HI  580 

|:N590 

CC  600 

HI  610 

HD  620 

UN  630 

PD  640 


POSITION  1,201  PR I NT  " 

PICTURE  NUMBER 

C6  SPACES>aVERALL  8PE 

ED" 

POSITION  l,21iPRINT  " 

SWITCHINB  SPEED  " 

RETURN 

JOY-BTICK(0) 

ON  jaY-4  SOTO  560,560 

,480,560,360, 560,500, 

560,520,540,560 

IF  NUMBER (ARRPQS) "21 

THEN  NUMBER (ARRP08) -0 

NUMBER  tARRPOS) -NUMBER 

(ARRP0B>+1  iQOTO  560 

IF  NUMBER(ARRPDa) -1  T 

HEN  NUMBERfARRPQS) -22 

NUMBER (ARRPOB) -NUMBER 

(ARRPOS)-liBaTO  560 

GOSUB  6601  IF  ARRP08-5 

THEN  ARRPDS-0 
ARRPOS-ARRPOS+liQDTD 
560 
aOSUB  6601  IF  ARRPOS-1 

THEN  ARRPOB-6 
ARRP03-ARRP0S-1 
POSITION  COORD (ARRPDS 
, 1) , COORD (ARRPDS, 2) 
PRINT  ">" 

IF  8TRIG(0}-0  THEN  BO 
SUB  1540 

KEY-PEEK (764>  I  POKE  76 
4,255 

IF  KEY-42  THEN  GOSUB 
1  100 

IF  KEY-62  THEN  B03UB 
50 

IF  KEY-0  THEN  BOSUB  2 
50 

IF  KEY-58  THEN  GOSUB 
30 

IF  KEY-IB  THEN  FOR  A- 
0  TO  511IP0KE  A+CHARl 
,0iPOKE  A+CHAR2,0iPQK 
E  A-«'CHAR3,0iNEXT  A 
RETURN 

POSITION  COORDCARRPOS 
, 1 ] ,C0DRD(ARRPQS,2) 
PRINT  "  "iRETURN 
FOR  A-1  TO  4 
POSITION  COORD(A, 11+1 
64(A<4> , COORD (A, 2) 
PRINT  NUMBER«A)i"  " 
NEXT  AiPOSITION  36,20 
iPRINT  NUMBER(A)-10i  ■' 


RETURN 

RESTORE  760tA-1535 
READ  Bt IF  B-256  THEN 
A-U8R<1535) iRETURN 
NN  750  POKE  A,  BlA-A+1  I  GOTO  7 
40 


KL  650 

(6  660 

II  670 

A1.6B0 

nil  690 

PO  700 

01(710 

HJ  720 

OB  730 

ID  740 

01760  DATA  104,173,46,2,141 

, 203,0 
« 770  DATA  173,49,2,141,204 

JH  780  DATA  160,28,169,2,145 

,203 
MP  790  DATA  136,192,5,208,24 

9,  162 
01800  DATA  5,189,102,6,168, 

177 
U810  DATA  203,9,  12B,  145,  20 

3,202 
6A820  DATA  16,243,169,64,14 

lp« 
JtB30  DATA  2,169,6,141,1,2 
IIOB40  DATA  169,255,141,108, 

6,  173 
PI  850  DATA  11,212,208,251,1 

69, 192 
JI  860  DATA  141,14,212,96,72 

,  138 
JO  B70  DATA  72,238,108,6,173 

,  108 
AE  880  DATA  6,201,6,208,5,16 

9 
66  890  DATA  0,141,108,6,170, 

189 
F6  900  DATA  96,6,141,10,212, 

141 

!l;910  DATA  9,212,104,170,10 

4,  64 
J);  920  DATA  72,224,80,224,88 

,  224 
fH  930  DATA  3,3,11,14,17,20, 

256 
fl  940  0RlBINAL-57344iCHARl- 
lB432iCHAR2-204B0lCHA 
R3-2252BI CHAR0-24576 
EC  950  FOR  A-ORIBINAL  TD  ORI 

GINAL-l-1024 
6H  960  D-A-ORIQINALi  V-PEEK<A 

> 
116  970  POKE  CHARl+D,  Wi  POKE  C 
HAR2+D, ViPOKE  CHAR3+D 
, VI  POKE  CHAR0+D, VtNEX 
T  A 
00  960  RESTORE  9901  FOR  A-246 
64  TO  246B7iREAD  BiPO 
KE  A,BiNEXT  AlRETURN 
£6  990  DATA  48,48,48,253,255 
,48, 43, 48, 0, 126, 126, 1 
26, 126, 126, 126,0,255, 
129, 129, 129, 129, 129, 1 
29,255 
I!  1000  DIM  BOX«<50)|DIM  NUM 
BER(5) iDIK  B« (5) iDIM 
BINARY«<64} iDIM  FN* 
( IS) iDIM  DEV* (2)  I  DIM 
DN«(17>iDIM  COORDfS 
,Z> 
ff  1010  POKE  732,  1  I  RESTORE  1 
0301  FOR  A-1  TO  SiNUM 
BER(A)-liFDR  B-1  TO 
2 
HI  1020  READ  Cl  COORD(A,B) -Ci 

NEXT  BiNEXT  A 
U 1030  DATA  0,19,0,20,0,21, 

20, 19,20,20 
KE  1040  ARRPOS-1 1  RESTORE  106 
0IFDR  A-1  TO  64iREAD 
B 
CH  1050  BINARY«<A,  A)=CHR«(Bt 

l-t-44)  I  NEXT  A 
BB  1060  DATA  1,1,1,1,1,1,1,0 
,1,1,0,1, 1,1,0,0, 1,0 
,1,1,1,0, 1,0,1,0,0,1 
, 1,0,0,0,0, 1,1,1,0,1 
, 1,0,0,1,0, 1,0, 1,0,0 
HE  1070  DATA  0,0,1,1,0,0,1,0 

,0,0,0,1,0,0,0,0 
PJ  1060  DLl-PEEK  (560)-t-2S6«PE 
EK (561) tODL^PEEK (DLI 
+4> !0DH=PEEK(DLI+5) 


KK  1090 

DL  1100 

PD  1110 

MH  1120 


BI  1130 

EJ  1  140 

LE  1  150 

OB  1160 

EH  1170 


EK  1180 

KL  1190 

EC  1200 

ND  1210 

LJ  1220 

AB  1230 

CF  1240 

U  1250 

Fl  1260 

06  1270 


06  1280 

OJ  1290 

HC  1300 
OC  1310 

OF  1320 

KH  1330 

KI  1340 

NL  1350 

M  1360 

n  1370 

HA  1380 

m  1390 

NL  1400 

DH  14  10 

6F  1420 

HH  1430 

BL  1440 


KL  1450 
IL  1460 


IK  1470 


in  1480 
EC  1490 


RETURN 

BOSUB  1110IGOTO  1200 

NU-NUMBER<2) -1 i POKE 

756,96 

SA- (NUMBER (2>-( INT <N 

U/7) «7>  >»72+(INT(NU/ 

7) ) »2048+lB36B 

BOSUB  1650 

R-01 B-0iNR-8lFOR  A-S 

A  TD  aA+71 iP-PEEK (A) 

HB-INT (P/16>  +I1LB-P- 

16t (HB-1 >+l 

POSITION  8«8,RtPRINT 

BINARY* (HB«4-3,HB«4 
} (BINARY* (LB (4-3, LB* 
4>| 

R-R+liIF  R-NR  THEN  R 
■NR-aiS»B+lj IF  8-3  T 
HEN  R-R+BlNR»NR+8lS- 
0 

NEXT  A 
RETURN 
POSITION  31,16lPRINT 

NUMBER(2) 
FOR  A-0  TO  2tFaR  B-0 

TO  2 
POSITION  30+B,ll+AlP 
RINT  CHR«(33+B+A»3) 
NEXT  BiNEXT  A 
A-UBR (29000)  I  IF  FL-0 

THEN  LOCATE  DX,DY,7 
OX"DXlOY-DYi POSITION 

DX.DYtPHINT  "+"| 
JOY-STICK(0) -4 
ON  JOY  GOTO  1230, 129 
0, 1300, 1360, 1310, 132 
0, 1330, 1360, 1340, 135 
0, 1360 
DX-DX+iiDY-DY+liBOTO 

1360 
DX-DX+liDY-DY-liBOTD 

1360 
DX-DX-l-llBDTO  1360 
DX-DX-liDY-DV+1 ■ GOTO 

1360 


DX-DX-llDY 

1360 
DX-DX-liQO 
DY-DV+liQO 
DY-DY-1 I  BO 
IF  DX>23  T 
IF  DY>23  T 
IF  DX<0  TH 
IF  DY<0  TH 
IF  STRIB(0 
-0  THEN  FL 
) «l+44 
IF  8TRIB(0 
FL-0 
POSITION  0 

CHR*  (Z)  I 
KEY-PEEK  (7 
64,255 
IF     KEY-IB 
-0    TO    23iF 
231PQBITI0 
T     CHR* (45) 
EXT     ft 
IF     KEY-42 
IF     KEY-6     A 
2X21     THEN 
0INUMBER (2 
)+llQOTO     1 
IF     KEY-14 
(2) >l     THEN 
0lNUMBER(2 
)-llBOTD     1 
IF    KEY-61 
UMBER (2) 
IF    KEY-10 
NUKBER(2) I 
UMBER(2)-S 
1101  NUMBER 


■DY-1 iBOTO 

TO  1360 
TO  1360 
TD  1360 
HEN  DX-0 
HEN  DY-0 
EN  DX=23 
EN  DY-23 
)-0  AND  FL 
-1  iZ-(Z-44 

)<>0  THEN 

X, OYjPRINT 

64>iP0KE  7 

THEN  FOR  A 
OR  B-0  TO 
N  A,BiPRIN 
I  I  NEXT  Bi N 

THEN  1510 
ND  NUMBER ( 

GOSUB  152 
)-NUMBER (2 
100 
AND  NUMBER 

BOSUB  152 
>-NUMBER (2 
100 
THEN  SHP»N 

THEN  TEMP- 
TEMP2-SAI N 
HPl BOSUB  1 
(2)-TEMPi S 


56     COMPUTEI     August  1"965 


A-TEMP2iQ0TD  1200 
m   1S00  aOTD  1240 
LB  1510  G08UB  1670IBOSUB  1S2 

0IRETURN 
U 1S20  FOR  A-0  TO  71 ■ POKE  S 

Ai-A,PEEK<245B4  +  A)  I  NE 

XT  A 
H 1330  RETURN 
U 1S40  IF  8TRIG<0)-0  THEN  1 

S40 
1I1SS0  GOSUB  1&S0IPOKE  SS<7, 

46iPDKE  t23,llPDKE  7 

0S,8iPOKE  70&,BiPOKE 
707,8lPOKE  53277,31 

POKE  54279,92 
KF  15&0  SP-NUMBER  (1  )  lEP-NUnS 

ER (4) iDIR-BQN (EP-SPJ 

lS8>NUHBER<3> i DB-NUM 

BER (5) -10 
01  1570  S-AB8(a8) /3*25&i  IF  Q 

S<0  THEN  0-2SS-INT(S 

/256) I R-S- (235-0) «25 

6iS-Q*2S&+R 
Mt   1SB0  OS-B 
IH  1390  FOR  PN-SP  TO  EP  STEP 

DIR 
CJ  1600  A«>USR<29132,  PN,08) 
P£  1610  TD-TD-liIF  TD<0  THEN 
TD-22-SBlNEXT  PNlBD 

TO  1590 
FH  1620  KEY-PEEK(764)  iPOKE  7 

0S,KEYiPaKE  706, KEY: 

POKE  707, KEY 
AD  1630  IF  8TRIG(0}<>0  THEN 

1600 
}f   1640  FOR  A>3324e  TO  53251 

iPOKE  A,220lNEXT  AlQ 

08UB  1670IRETURN 
DC  1650  POKE  54286,  64iP0KE  8 

8,0iPaKE  89,100iPOKE 
DLI+4,0iPOKE  DLI+S, 

100 
HH1660  T-PEEK<  106)  iPOKE  106 

, 104iPRINT  CHR«< 125) 

iPOKE  106,TlRETURN 
JJ  1670  A-USR<  1535)  iPOKE  DLI 

+4,0DLiPQKE  DLI+5,0D 

HiPOKE  BB.ODLlPOKE  8 

9,aDHi RETURN 

Program  5:  Apple 
ANIMATOR2  Maker 

Version  by  Tim  Victor,  Editorial 

Programmer 

Please  refer  to  "COMPUTE  I 's  Guide  to  Typing 

In  Programs"  before  entering  ttiese  listings. 

24  80  FOR  I  =  126  »  256  TD  I  +  1 
45S;  READ  A:  POKE  I, A:  NEX 
T 
F5  90  PRINT  CHR*  (4);"BSfiVE  ANIM 

ATDR2,A«7E00,L«5B0"!  END 
17  100  DATA  0,0,0,0,0,0,0,0,0,0, 

0 
82  110  DATA  0,0,0,0,0,216,120,13 

3,69, 134,70 
7t  120  DATA  132,71,166,7,10,10,1 

76,4, 16,62,48 
13  130  DATA  4,16,1,232,232,10,13 

4,27,24, 101,6 
55  140  DATA  133,26,144,2,230,27, 

165,40, 133,8, 165 
iJ  150  DATA  41,41,3,5,230,133,9, 

162,8, 160,0 
n    160  DATA  177,26,36,50,48,2,73 

, 127, 164,36, 145 
9C  170  DATA  8,230,26,203,2,230,2 

7,165,9,24, 105 
it    180  DATA  4,133,9,202,208,226, 

165,69,166,70,  164 
SB  190  DATA  71,88,76,240,253,128 

,12S, 128,128,190, 128 


53  200  DATA  128,128,128,128,128, 

190, 128, 190, 128, 128, 128 
U  210  DATA  188,230,176,152,128, 

152, 128, 128, 188,230,246 
i3  220  DATA  238,230,188,128,128, 

152, 156, 152, 152, 152, 188 
E8  230  DATA  128,128,188,230,176, 

140,230,254, 128, 128, 188 
n   240  DATA  230,176,224,230,188, 

12B, 128, 176, 184, 180, 254 
EC  250  DATA  176,176,128,128,254, 

134, 190,224,230, 188, 128 
14  260  DATA  128,188,134,190,230, 

230, 188, 128, 128,254,224 
Bl  270  DATA  176,152,140,140,128, 

128, 188,230, 188,230,230 
F:  2B0  DATA  188,128,128,188,230, 

230,252, 176, 132, 128, 128 
?(  290  DATA  152,176,254,254,176, 

152, 128, 128, 190, 190, 190 
21  300  DATA  190,190,190,128,0,0, 

0,0,0,0,0 
IB  310  DATA  0,0,0,0,0,0,0,0,0,0, 

0 
ID  320  DATA  0,0,0,0,0,0,0,0,0,0, 

0 
B7  330  DATA  0,0,0,128,128,152,18 

a, 188. 152, 128, 128 
i*  340  DATA  128,252,230,230,254, 

230,230,128, 128, 190,230 
S2  350  DATA  230,190,230,254,128, 

128, 188,230, 134, 134,230 
Fl  360  DATA  190,128,128,190,230, 

230,230,230, 190, 128, 128 
«D  370  DATA  254,134,134,190,134, 

254, 128, 128, 234, 134, 134 
F4  380  DATA  190,134,134,128,128, 

188,230, 134,246,230,190 
Efl  390  DATA  128,128,230,230,230, 

254,230,230, 128, 128, 152 
3C  400  DATA  152,152,152,152,152, 

128, 128,224,224,224,224 

87  410  DATA  230,188,128,128,230, 

230, 182, 158,230,230,128 
2B  420  DATA  128,134,134,134,134, 

134,254, 128, 128,230,254 
97  430  DATA  230,230,230,230,128, 

128, 190,230,230,230,230 
69  440  DATA  230,128,128,188,230, 

230,230,230, 188, 128, 128 

88  450  DATA  190,230,230,190,134, 

134, 128, 128,188,230,230 
8A  460  DATA  230,182,236,128,128, 

190, 230, 230, 190, 230, 230 
(2  470  DATA  128,128,188,230,140, 

176,230, 190, 128, 128,254 
5D  480    DATA    152,152,132,152,152, 

128, 128, 230, 230, 230,230 
5D   490    DATA    230,190,128,128,230, 

230,230,230,230, 152, 128 
3C  500    DATA    128,230,230,230,230, 

254,230, 128, 128,230,230 
27  510  DATA  230,188,230,230,128, 

128,230,230,230, 188, 152 
F4  520  DATA  152,128,128,254,176, 

152, 140, 134,254, 128,0 
94  530  DATA  0,0,0,0,0,0,0,160,0, 

162,7 
D7  540  DATA  169,196,133,254,169, 

132, 133,255,177,254,73 
»   550  DATA  127,145,254,200,208, 

247,230,255,202,208,242 
3B  560  DATA  96,0,0,0,0,0,76,21,1 

28,76,83 
B!  570  DATA  128,76,130,128,76,23 

9,128,76,6,130,76 
1*  580  DATA  148,129,76,210,129,1 

69,2, 141, 180, 131, 169 
82  590  DATA  24,141,181,131,32,31 

, 130, 176,48,32,71 
!B  600  DATA  131,176,43,32,156,13 

1, 176,38, 173, 178, 131 
K   610  DATA  133,252,173,179,131, 

133,253,32,223, 130,32 


«  620  DATA  95,130,32,168,130,23 

8, 184, 131, 163,252,24 
BB  630  DATA  105,3,133,252,144,2, 

230,233,206, 181,  131 
04  640  DATA  208,228,96,169,2,141 

,180, 131, 169,24, 141 
E«  650  DATA  181,131,32,71,131,17 

6,29,32,156,131,  176 
DE  660  DATA  24,160,3,169,0,153,1 

96, 131, 136,16,250 
CD  670  DATA  32,223,130,32,168,13 

0,238, 184, 131,206, 181 
52  680  DATA  131,208,242,96,165,5 

6,164,57,201,186,208 
FE  690  DATA  4,192,128,240,14,141 

,190, 131, 140,191, 131 
EC  700  DATA  169,186,133,56,160,1 

28, 132,57,32,121, 129 
13  710  DATA  169,0,141,194,131,32 

,31, 130,176,13, 173 

42  720  DATA  178,131,141,197,128, 

173, 179, 131,141, 198, 128 
DC  730  DATA  96,32,6,130,0,145,40 

, 169,48,141,0 
3i  740  DATA  2,141,1,2,173,255,25 

5,201,100, 144,7 
2A  750  DATA  233,100,238,0,2,208, 

245,201,10, 144,7 
»E  760  DATA  233,10,238,1,2,208,2 

45, 103,48, 141,2 
FC  770  DATA  2,162,3,169,141,238, 

197, 128,208,3,238 
F7  780  DATA  198,128,96,32,121,12 

9, 169,255, 141, 194,  131 
37  790  DATA  32,31,130,176,23,173 

, 178, 131, 141,84,  129 
CC  800  DATA  173,179,131,141,85,1 

29, 169,196, 141, 110,129 
98  810  DATA  169,131,141,111,129, 

96,32,6,130,0,44 
5*  820  DATA  194,131,48,3,76,240, 

253,201, 176, 144,4 
32  830  DATA  201,186,144,70,72,14 

0,195,131,56, 173, 110 
3D  840  DATA  129,233,196,240,53,1 

41, 182, 131, 169,0, 168 
22  850  DATA  201,26,176,214,10,14 

1,68, 129, 10, 10, 105 
82  860  DATA  255,176,204,121,196, 

131,56,233, 176,200,204 
88  870  DATA  182,131,208,230,141, 

255, 255, 238, 84, 129,208 
31  8B0  DATA  3,238,85,129,169,196 

,141,110, 129, 169, 131 
ED  890  DATA  141,111,129,172,195, 

131, 104,96, 141,253,233 
9D   900    DATA    238,110,129,208,3,23 

8,111, 129,96, 163,34 
4F   910    DATA    164,55,201,23,208,4, 

192,129,240, 14, 141 
CC   920    DATA    192,131,140,193,131, 

169,23, 133,34, 160, 129 
E4   930    DATA    132,55,96,32,31,130, 

176,56, 173, 178, 131 

43  940    DATA    141,198,129,208,3,20 

6,179, 131,206,198,129 
IE   950    DATA    173,179,131,141,204, 

129, 169,227, 133, 252, 169 
82   960    DATA    142,133,253,160,0,17 

7, 252, 160, 72, 145, 252 
27   970    DATA    165,252,208,2,198,25 

3, 198,252,169,255,197 
93   980    DATA    252,208,234,169,255, 

197, 253, 208, 228, 96, 32 
(9   990    DATA    31,130,176,46,173,17 

8, 131, 133,252, 173, 179 
iC    1000    DATA    131,133,253,169,228 

, 141,250,129, 169, 142,141 
29    1010    DATA    0,130,160,72,177,25 

2, 160,0,143,232,230 
E7    1020    DATA    252,208,2,230,253,1 

69 , 255 ,197, 252 , 208 , 236 
iD  1030  DATA  169,255,197,253,208 

,230,96,173,190,131,  172 


August  1 985     COMPUTEI      57 


FC    1040    DflTfl    191,131,240,4,133,5 

6,132,57,173,192,131 
49   1050    DATA    172,193,131,240,4,1 

33, 54, 132, 55, 96, 169 
E»   1060    DATA    196,141,178,131,169 

, 132, 141, 179, 131,32, 165 
9a    1070    DATA    131,201,21,144,1,96 

, 141, 176, 131,169,0 
Bi    1080    DATA    141,177,131,160,3,3 

2,64,130,160,3, 173 
S8  1090  DATA  176,131,10,46,177,1 

31, 136,208,249, 141, 176 
Ei  1100  DATA  131,24,109,178,131, 

141, 178, 131, 173, 179, 131 
44  1110  DATA  109,177,131,141,179 

,131,24,96,172,180,131 
C4  1120  DATA  200,140,182,131,169 

,0, 153, 196,131,136,177 
2E  1130  DATA  252,153,196,131,136 

,16,248,173, 196,131,9 
7»  1140  DATA  127,141,183,131,172 

,187, 131,240,21,162,0 
72  1150  DATA  14,196,131,189,196, 

131,10,62,197,131,232 
B8  1160  DATA  236,182,131,208,243 

,136,208,235,172, 182, 131 
C?  1170  DATA  185,196,131,9,128,4 

5,183,131,153, 196,131 
5C  11B0  DATA  136,16,242,96,172,1 

87,131,183,209, 130,172 

77  1190  DATA  182,131,49,254,25,1 

96, 131 , 145,254, 136, 185 
BE  1200  DATA  196,131,145,254,136 

,208,248, 172, 187, 131, 185 
41  1210  DATA  216,130,160,0,49,25 

4,13,196,131, 143,254 
ID  1220  DATA  96,127,126,124,120, 

112,96,64,0, 1,3 
tC  1230  DATA  7,15,31,63,173,184, 

131,41,63, 168, 185 
Ffl   1240    DATA    7,131,5,230,133,255 

,173,104, 131,41,8 
?S   1250    DATA    240,2,169,128,24,44 

,184, 131, 112,4, 16 
BF   1260    DATA    4,105,40,105,40,109 

,186,131, 133,254,96 

78  1270    DATA    0,4,8,12,16,20,24,2 

8,0,4,8 
4?   1280    DATA    12,16,20,24,28,1,5, 

9,13, 17,21 
24    1290    DATA    25,29,1,5,9,13,17,2 

1,25,29,2 
BI   1300    DATA    6,10,14,18,22,26,30 

,2,6,10,14 
71    1310  DATA    18,22,26,30,3,7,11, 

15,19,23,27 
49    1320   DATA   31,3,7,11,15,19,23, 

27,31, 169,0 
7B    1330   DATA    141,186,131,141,187 

,131,32,165,131,141, 185 
IB    1340   DATA    131,192,1,144,18,24 

0,1,96,201,24, 144 
E9    1350   DATA    1,96,169,36,141,186 

,131, 169,4, 141, 187 
Cft   1360   DATA    131,169,0,141,198,1 

31,169,224,141, 189, 131 
F2    1370   DATA    173,185,131,205,189 

,131,144,4,237, 189, 131 
B7    1380   DATA   56,46,188,131,78,18 

9,131,144,239,24, 109 
iE    1390    DATA    187,131,141,187,131 

,24,173,188, 131, 109, 1B6 
ftC   1400    DATA    131,141,186,131,24, 

96,32, 165, 131,141, 184 
F6    1410    DATA    131,201,192,96,32,1 

77,0,32,5,225, 165 
8«    1420   DATA    161,164,160,96 


Program  6:  Apple  Animator 

FD  100  DIH  EX<2,23),M«(8) ,CM»(7) 
,MM*(14>!D«  -  CHR«  (4)1  P 
RINT  D«!"BLDAD  ANII1ATDR2" 


44 

120 

D4 

130 

14 

140 

ii 

150 

B5 

160 

4C 

170 

44 

180 

45 

190 

c  < 


136 

iF 


mtK  I     iwnra  '  «•  speed  z      piux  ti 


BBBBByyyBB 


tnSCRT    FflflriE   Q,    P(QT£R    SP££D 
DELETE   FRfRC   R    SLIH^    SPEED 

twncE  flOTTon  E  i,ess  miuse       £   if¥.iEnr 

MWC    TIW  E    imRC    PflUSE         5    WIT       j 


In  Ms  demonstration  of  "Apple  Anima- 
tor," a  motorcyclist  performs  a  daring 
wheelstand, 

SF  110  FOR  I  =  0  TO  8:  READ  M«  ( I 

))  NEXT  !  FDR  I  -  0  TO  7: 
READ  CM* (1)1  NEXT  :  FOR 

I  «  0  TO  14 1  READ  «M«(n: 
NEXT 

GDSUB  530 

A*  =  "";  FDR  I  =  1  TO  72: 

A»  -  A»  +  "0  ";A  "  FRE  <0 

) I  NEXT 

BOSUB  650:  GOSUB  590 

F  =  1:AB  =  1:AE  =  20: AS  = 
01 AP  -  10 

ONERR  GOTO  1390 

GOSUB  710:  IF  MQ  =  1  THEN 
HOME  !  TEXT  !  END 

C  =  PEEK  (49152) :  IF 

128  THEN  180 

POKE  49168,0:  IF  C  = 

THEN  F-F-l+20« 

"1)1  GOTO  170 
CF  200  IF  C  =  149  THEN  F  =  F  +  1 
-  20  *  [F  "  20) :  SOTO  17 

0 

C  =  C  -  175:  IF  C  <  1  OR 

C  >  22  THEN  180 

IF  C  <  11  THEN  250 
IF  C  <  IB  THEN  180 

C  =  C  -  7 

MG  =0:  ON  C  GOSUB  260,11 

20, 1210, 1500, 1510, 1520, 16 

60, 1670, 16B0, 1690, 1370, 12 

50,  1470,  1460,  1440:  T  ■=  FRE 
(0)1  GOTO  170 
12  260  GDSUB  560 t  GOSUB  700!  VTA 

B  19:  HTAB  14:  PRINT  "EDI 

TING  BOX  "jA 
31  270  PRINT  "PRESS  ESC  TO  CANCE 

L"s  HTAB  7:  PRINT  "RETURN 
FDR  SAME";  PRINT  :  PRINT 
"STORE  RESULT  IN  BOX  " ; : 

R«  -  "" 
91  280  XC  =  21  +  LEN  CR*)  :  VTAB 

23:  HTAB  XC:  PRINT  ";"; 
77  290  C  =  PEEK  (49152)  :  IF  C  < 

128  THEN  290 
25  300  POKE  49168,0!  IF  C  =  141 

OR  C  -  ISS  THEN  VTAB  23: 

HTAB  XCi  PRINT  "  ";:  SOTO 
360 

IF  C  <  >  136  AND  C  <  >  25 

5  THEN  340 

VTAB  23:  HTAB  XC!  PRINT  " 
"jl  IF  LEN  (R«)  <  2  THEN 
R«  -  "":  GOTO  280 

R«  =  LEFT*  CR*,  LEN  (R«) 

-  1)«  SOTO  280 

IF  C  <  176  OR  C  >  185  THE 

N  290 

VTAB  23:  HTAB  XC:  PRINT  C 

HR»  (C  -  128) ! !R«  -  R«  + 

CHR*  (C  -  128) iQ  =  FRE  (0 

) I  GOTO  280 
4E  360  IF  C  =  155  THEN  SOSUB  660 

!  RETURN 
fi  370  IF  R»  =  ""  THEN  AA  =  A:  6 


49 

210 

CB 

220 

7! 

230 

93 

240 

4« 

250 

3A 

310 

AE 

320 

44 

330 

AD 

340 

9! 

350 

OTO  390 

84  380  AA  '    VAL  (R«)  :  IF  AA  >  20 

THEN  GDSUB  660:  RETURN 
9fl  390  HBRZ  :  HOME  :  GOSUB  1070 
F2  400  XP  =  184:  YP  =  44:DX  =  65: 

DY  -  801  eOSUB  980 
3A  410  VTAB  7:  FDR  Q  =  0  TO  8:  H 

TAB  28:  INVERSE  i  PRINT  M 

ID*  ('■  123456789",  Q  +1,1) 

j:  NORMAL  i  PRINT  "  " | M* ( 

Q) :  NEXT 
BC  420  CALL  32768,  A,  206,  12:  XC  = 

0:YC  *  0:QF  -  0!  GOSUB  87 

0 
44  430  IF  QF  THEN  GOSUB  590:  RET 

URN 
32  440  SC  =  INT  (YC  /  8):SA  =  10 

24  +  YC  «  128  -  SC  «  984 

+  XC:CC*  -  ■■  " 
84  450  DC*  =  CC»:CC«  =  CHR*  (  PE 

EK  (SA)  -  128):  HTAB  XC  + 
li  VTAB  YC  +  l!  PRINT  OC 

♦; 

C4  460  C  =  PEEK  (49152)!  IF  C  < 
128  THEN  T  -  FRE  (0) :  GOT 

0  450 

2E  470  POKE  49168,0:  IF  OC*  =  " 
"  THEN  HTAB  XC  +  1 i  VTAB 
YC  +  ll  PRINT  CC«J 

9i  480  FOR  D  =  1  TO  13:  IF  C  <  > 

ABC  (  MID*  ("JLIK1234367 

89",D,U>  +  128  THEN  NEXT 

B4  490  ON  Q  aOSUB  750,760,770,78 
0,840, 850 , 870 , 880 , 890 , 990 
,1020,1050,1060:  SOTO  430 

EB  500  I  =  A  »  28  -  24  -  280  t  ( 
A  >  10): J  -  26  +  80  t  (A 
>  10)!  CALL  32768, A, I, J 

EE  510  X  =  FRE  (0):  RETURN 

m   520  FOR  A  =  1  TO  20:  GOSUB  50 

01  NEXT  !  RETURN 

17  330  POKE  6,0:  POKE  7,126:  IF 

PEEK  (48640)  -  76  THEN  35 

0 

POKE  54, 16:  POKE  55, 126: 

CALL  1002:  RETURN 

PRINT  :  PRINT  CHR*  (4) ; "P 

R#A*7E10":  RETURN 

A  =  F:  RETURN 

GDSUB  580:  HTAB  1: 

"WHICH  BOX?")AlA  - 

) I  IF  A  <  1  OR  A  > 

N  570 
2F  580  VTAB  22:  HTAB  1:  PRINT  SP 

C(  39)1  RETURN 
4F  590  HOME  !  HGR2  :  HCOLOR=  3 
Bfl  600  FOR  J  =  25  TO  105  STEP  80 

!  FOR  I  -  3  TO  I  +  9  i  28 
STEP  28:  FOR  P  -  0  TO  1 
9D  610  HPLOT  I-P,J-.pTOI  + 

22  +  P,J  -  P  TO  I  +  22  + 

P,J  +  25  +  P  TO  I  -  P,J  + 
25  +  P  TO  I  -  P,J  -  P 
FB  620  NEXT  j  NEXT  :  NEXT 
IB  630  FOR  J  =  0  TO  l!  FOR  1  =  1 
TO  10!  HTAB  I  t  4  -  2:  V 

TAB  J  »  10  +  3:  PRINT  I  + 
J  t    10:  NEXT  :  NEXT 
9B  640  GOSUB  520:  GOTO  660 
B7  650  POKE  242,0:  CALL  32777,0: 
FOR  I  -  0  TO  20!  PRINT  A 

•i  NEXT  !  CALL  32780:  RET 

URN 
3ft  660    GOSUB    700: XP    =    2:YP    =    140 

iDX    -   275: DY    -    48:    GOSUB 

980 
AS  670  VTAB  19:  FOR  I  =  0  TO  4: 

HTAB  2i  INVERSE  :  PRINT  I 

1 1  NORMAL  I  PRINT  "  " ) MM* 

(I) I  1  HTAB  17!  INVERSE  : 

PRINT  I  +  5) 
IB  680  NORMAL  :  PRINT  "  " ; MM* ( I 

+5)!!  HTAB  32i  INVERSE  : 
PRINT  CHR*  (65  +  I)):  ND 


41 

540 

!E 

550 

IB 

560 

E! 

570 

INPUT 
INT  (A 
20  THE 


58     COMPinei     August  1965 


2B 

690 

t! 

700 

#7 

710 

n 

720 

'■FR 


RANGE  ";A 
PRINT  "s 


ft  730 

IF  740 

1!  750 

47  760 

4B  770 
58  780 
II  790 

BB  B00 


RMAL  !  PRINT  "  "jHMtd  + 

10>:  NEXT 

RETURN 

HTAB  1:  VTAB  IS:  FOR  Q    = 

1  TO  7;  PRINT  SPC(  40> i  N 

EXT  s  RETURN 

VTAB  1:  HTAB  1:  PRINT 

AME  "}Fi "  "J 

HTAB  10:  PRINT 

Bj°  '■;:  HTAB  IB 

HTAB  22:  PRINT  "SPEED  "jA 

S)"   "s:  HTAB  32:  PRINT  " 

PAUSE  ";AP;"  "; 

RETURN 

XC  =  XC  -  (XC  >  0> :  GOTO 

790 

XC  =  XC  +  (XC  <  20):  GOTO 

790 
YC  =  YC 
790 
YC  =  YC 

790 
XB  =  INT  (XC  /  7):Pri  =  2 
-"  (XC  -  7  «  XB):T  »  INT  ( 
EXCXB.YC)  /  PM)!  ON  DF  GO 
TO  000,820:  RETURN 
IF  T  =  2  *  INT  (T  /  2)  TH 
EN  EX(XB,YC)  =  EX(XB,YC) 
+  PMj  HTAB  XC  +  li  VTAB  Y 
C  +  1:  PRINT  "j"> 


(YC  >  0) :  BOTO 


(YC  <  23> :  BOTO 


lA 

B10 

RETURN 

SB 

B20 

IF  T  <  >  2  »  INT  (T  /  2) 
THEN  EXCXB.YC)  -  EX(XB,YC 
)  -  PMs  HTAB  XC  +  1:  VTAB 
YC  +  1:  PRINT  "."5 

IE 

B30 

RETURN 

ce 

840 

QF  =  1:  RETURN 

SB 

850 

DF  =  1:  SQSUB  B60:  HTAB  2 
9;  VTAB  8:  PRINT  "3"(!  BO 
TO  790 

a 

860 

VTAB  8:  FOR  I  =  1  TO  3:  H 
TAB  29!  PRINT  "  ":  NEXT  i 

GOSUB  860:  HTAB  2 
9:  PRINT  "3" 5:  RE 


RETURN 

7E  B70  DF  ■=  0: 

9 I  VTAB 

turI^j 
cd  bb0  df  =  2:   gosub  860:   htab  2 

9i  VTAB  10t  PRINT  "8"tl  B 

OTO  790 
B!  890  XP  =  149:  YP  =  140:  DX  =  12 

B:DY  -  40:  GOSUB  980 
4B  900  FOR  I  =  0  TO  3:  VTAB  19  + 
I:  FC3R  J  =■  0  TO  li  HTAB 

23  +  9  t  J:  INVERSE  ;  PRI 

NT  I  +  J  «  4;:  NORMAL  t  P 

RINT  "  "I CM* (I  +  J  t  4)i I 
NEXT  I  NEXT 
IS  910  C  =  PEEK  (49152)  :  IF  C  < 

128  THEN  910 
K  920  VTAB  18:  FDR  I  =  0  TO  5: 

HTAB  22:  PRINT  SPC(  19) ( 

NEXT  !  POKE  4916B,0!C  =  C 
-  176 
El  930  IF  C  <  0  OR  C  >  7  THEN  RE 

TURN 
22  940  T  =  C  -  4  «  INT  (C  /  4)sP 

0  -  42  »  T  +  (T  >  1):P1  - 
P0J  IF  P0  =  42  OR  P0  -  8 

5  THEN  PI  -  127  -  P0 
IB  950  IF  C  >  3  THEN  P0  =  P0  +  1 

28iPl  -  PI  +  12B 
2B  960  T  «.  T  +  (T  >  2):  FOR  I  = 

0  TO  23:  VTAB  I  +  Is  HTAB 
lfEX(0, 1)  -  P0:E7.<1,I)  - 
P1:EX<2,I)  =  P0 
«  970  FOR  J  =  1  TO  10!  PRINT  MI 

D«  ("..;. J  J ",T  +  1,2); J  N 

EXT  I  PRINT  MID»  (■•.;",(T 
>  1)  +  l,l);i  NEXT  I  RET 

URN 
44  980  FOR  P  =  0  TO  Is  HPLOT  XP 

+  P,YP  +  P  TO  XP  +  DX  -  P 

,YP  +  P  TO  XP  +  DX  -  P,YP 


+  DY  -  P  TO  XP  +  P,YP  + 

DY  -  P  TO  XP  +  P,YP  +  P: 

NEXT  :  RETURN 
7C  990  QF  =  1:  GOSUB  1000:  BETUR 

N 
7F  1000  POKE  242,0:  CALL  32777, A 

A 
7D  1010  FOR  I  =  0  TO  23!  FOR  J  = 
0  TO  2i  PRINT  EX(J,I) i 

NEXT  ■  NEXT  !  CALL  327B0 

1  RETURN 
F?  1020  HOME  !  FOR  I  =  0  TO  23: 

FOR  J  -  0  TO  2i0  -  127  - 
EX (J, I):  IF  0  <  0  THEN 

0  -  0  +  256 
9E  1130  GOSUB  700!  IF  A  <  20  THE 

N  CALL  32783, A 
Bi  1140  POKE  242,0:  CALL  32777,  A 

!  PRINT  At!  CALL  327B0! 

FOR  A  -  A  TO  20!  GOSUB  5 

00:  NEXT 
Ff  1150  GOSUB  660!  RETURN 
ED  1160  PRINT  ■■  -REALLY/"; 
AS  1170  C  =  PEEK  (49132):  IF  C  < 

12B  THEN  1170 
IF  11B0  POKE  49168,0:  IF  C  =  206 

THEN  PRINT  "NO"!  RETURN 
B2  1190  IF  C  =  217  THEN  PRINT  "Y 

ES":  RETURN 
tC  1200  GOTO  1170 
71  1210  GOSUB  560:  BDSUB  700:  VT 

AB  19:  HTAB  10!  PRINT  "D 

ELETE  BOX  ";A;!  GOSUB  11 

60:  IF  C  =  206  THEN  1240 
IE  1220  GOSUB  700:  IF  A  <  20  THE 

N  CALL  32786, A 
flF  1230  POKE  242,0:  CALL  32777,2 

0!  PRINT  A«!  CALL  32780: 
FOR  A  =  A  TO  20:  SDSUB 

500!  NEXT 
EE  1240  GOSUB  660;  RETURN 
91  1250  F«  =  "SAVE":  GOSUB  1270: 
IF  LEN  (NS)  <  >  0  THEN 

PRINT  !  PRINT  D»S"BSflVE 

";N«; ",A»a4C4,L«5Ea" 
F6  1260  GOTO  590 
52  1270  HOME  :  TEXT  :  VTAB  2:  PR 

INT  "ESC  TO  CANCEL,  RETU 

RN  FOR  CATALOG" 
H    12B0  PRINT  !  PRINT  F«;"  FILEN 

AME: "; iN*  =  "" 
15  1290  BDSUB  1320:  IF  C«  =  CHRS 
(27)  THEN  N»  -  "":  RETU 

RN 
CE  1300  IF  N«  =  ""  THEN  PRINT  : 

PRINT  D« J "CATALOG":  GOTO 
1280 
a   1310  RETURN 
flC  1320  T  =  FRE  (0) :  GET  C»:  IF 

C«  =  CHR«  (13)  OR  C«  =  C 

HR«    (27)    THEN    RETURN 
Bft    1330    IF    C«    <     >    CHRS     (127)    AND 
C»    <    >   CHR«     (B)    THEN   N« 

-  N«  +  C»i  PRINT  C«;:  G 
OTO  1320 

CE  1340  IF  N*  =  ""  THEN  1320 
2?  1350  HTAB  LEN  (N»)  +  14:  PRIN 
T  "  "; :  HTAB  LEN  (NS)  + 
14:  IF  LEN  (N*)  =  1  THEN 
N«  =  ""!  GOTO  1320 
Bft  1360  N«  =  LEFT*  (N*,  LEN  (N«) 

-  1) !  BOTD  1320 

JC  1370  F«  =  "LOAD":  GOSUB  1270s 
IF  LEN  (N«)  <  >  0  THEN 

PRINT  !  PRINT  D»;"BLDAD 

";N»; ",A«84C4" 
II  1380  GOTO  590 
Eft  1390  PRINT  :  PRINT  "AN  ERROR 

HAS  OCCURRED" 
5E  1400  PRINT  "MAKE  SURE  THAT  YO 

U  HAVE  A  FORMATTED" 
F9  1410  PRINT  "  DISK  IN  THE  DRIV 

E" 
49  1420  PRINT  s  PRINT  "PRESS  ANY 


KEY  TO  CONTINUE" 
C2  1430  GET  W«!  GOSUB  590:  GOTO 

170 
BE  1440  GOSUB  700:  VTAB  19:  HTAB 
10:  PRINT  "QUIT  ANIMATO 
R"; :  BOSUB  1160:  IF  C  = 
217  THEN  MQ  =  1:  RETURN 
Fi  1450  GOSUB  660:  RETURN 
«7  1460  CALL  32736:  GOTO  520 
BD  1470  BQSUB  700:  VTAB  19:  HTAB 
9:  PRINT  "CLEAR  ALL  BOX 
ES";:  GOSUB  1160:  IF  C  = 
206  THEN  1490 
71  1480  GOSUB  700:  GOSUB  650:  GO 

SUB  520 
17  1490  BOSUB  660:  RETURN 
3i  1500  AB  =  F:  RETURN 
9fl  1510  AE  =  F:  RETURN 
41  1520  A  =  AB:QF  =  0:AR  =  0:AX 

=  0 
ED  1530  CALL  32771, AO, 60!  CALL  3 
2768, A, AX, 60! AO  =  AX:  IF 
QF  -  1  THEN  RETURN 
BB  1540  C  =  PEEK  (49152)  :  IF  C  > 
128  THEN  POKE  49168,0: 
BOSUB  1600 
E3  1550  FOR  I  =  0  TO  AP  »  5:  NEX 
T  jAR  -  AR  +  AS!  IF  AR  > 
259  THEN  AR  =  0 
5C  1560  IF  AR  <  0  THEN  AR  =  259 
Bfl  1570  AX  =  2  *  INT  (AR  /  2> !  I 
F  AE  >  AB  THEN  A  -  A  +  1 
!  IF  A  >  AE  THEN  A  »  AB 
3B  1580  IF  AE  <  AB  THEN  A  =  A  - 
1:  IF  A  <  AE  THEN  A  =  AB 
BE  1590  GOTO  1530 
il  1600  IF  C  <  >  160  THEN  1630 
96  1610  IF  PEEK  (49152)  <  12B  TH 

EN  1610 
9J  1620  POKE  49168,0:  RETURN 
36  1630  IF  C  =  136  THEN  GOSUB  16 
GOTO  710 

C  =«  149  THEN  GDSUB  16 
GOTO  710 
=  1:  RETURN 


=  AS  +  (AS  <  15) :  RET 


=  AS 


(AS  > 


15)  : 


(AP  >  0) :  RETU 


AP  +  (AP  <  150):  RE 


70: 
IB  1640  IF 

60: 
13  1650  QF 
IB  1660  AS 

URN 
C2  1670  AS 

ETURN 
!A  1680  AP  =  AP 

RN 
fl  1690  AP 

TURN 
BC  1700  DATA  QUIT,  DRAW,  MOVE,  ERAS 

E , CLEAR , SAVE , I NVERT ,  UPD A 

TE, REVERT 
91  1710  DATA  BLACKl, GREEN, PURPLE 

, WH I TE 1 , BL ACK2 , OR ANGE , BL 

UE,WHITE2 
it    1720  DATA  EDIT  FRAME, INSERT  F 

R AME , DELETE  FRAME , RANGE 

BOTTOM, RANSE  TOP 
Ei  1730  DATA  ANIMATE, FASTER  SPEE 

D, SLOWER  SPEED, LESS  PAUS 

E 
fl»  1740  DATA  MORE  PAUSE, LOAD, SAV 

E, CLEAR, INVERT, QUIT 

Program  7:  Tl  Animator 

Version  by  Patrick  Parrish, 
Programming  Supervisor 

10  F0RE=2  I!  BACK=12  !s  REM 

REQUIRES  EXTENDED  BASIC 

20  CALL  CLEAR  : :  GDSUB  480 

i  !  F-1  i  !  L=10  :  !  N=l  !  ! 

BE=1  I!  E=20  !s  SP=0  :: 

DL-0  S!  FOR  1=104  TO  14 

3  ::  CALL  CHAR ( I , RPT* ( "0 

" , 16) ) : :   NEXT  I 

30  CALL  MAeNIFY(4)!i  DIM  B( 

16,I6),C*(15),E«(20),IFL 

AG(20)!:  D«-"DEVICE  <DSK 


August  1985     COMPUTEI      59 


370 
390 


410 


l.FILE  OR  CSl)?"   !!  GQSU 
B  910  ::   CALL  SCREEN(BftC 
K>  :  :  GOSUB  970 
40  CALL  KEY(0,K,S)::   IF  B=0 

THEN  40 
50  IF  K>4S  AND  K<57  THEN  K= 
K-4B  : :  ON  K  GOTO  170,50 
0,  220, 220, 240,  240,  250,  25 
0 
i0  IF  K=66  THEN  BOSUB  260 
70  IF  K=70  THEN  GOSUB  270 
80  IF  K=73  THEN  GOSUB  280 
90  IF  K  =  4.9  THEN  GOSUB  300 
100  IF  K=65  THEN  GOSUB  330 
110  IF  K=76  THEN  GDSUB 
120  IF  K=67  THEN  GOSUB 
130  IF  K=81  THEN  END 
140  IF  K=7S  THEN  GOSUB 
150  IF  K=6a  OR  K=83  THEN  N= 
N-(  (N<>n-!N=1)  »19)  «<K  = 
a3)+( (N<>20)-(N=20)«19) 
«(K=68)::  DISPLAY  fiT(4, 
1  )  :N; 
160  GOTO  40 

170  CALL  CLEAR  ::   BOSUB  4B0 

: !  FDR  1=5  TO  8  : :  CftL 

L  COLOR ( I , FORE, 1 >: !  NEX 

T  1  ! !  FOR  1=1  TO  20  : ! 

CALL  CHAR (60+1 t4, E« ( I ) 

)  :  :  NEXT  I 

180  GDSUB  490  s:  CALL  SPRIT 

E(#1,60+BE»4, FORE, 100, 1 

00)::  CALL  MOTION(«1,0, 

SP«6) 

190  FOR  1=BE  TO  E  : !  CALL  P 

ATTERN (#1 , 60+1*4) : !  DIS 

PLAY  AT  (  1  ,  1 )  :  I  :  :  FOR  J 

=1  TO  DL  ; :  NEXT  J  : :  N 

EXT  I 

200  CALL  KEY(0,K,S)i:   IF  S= 

0  THEN  190  ELSE  CALL  DE 

LSPRITE (#1 )  :  :  CALL  CHAR 

SET 

210  F0RE=F0RE-1   ::   GOSUB  27 

0  :  :  FOR  1=5  TO  0  :  :  CA 
LL  COLOR ( I ,2, 1 > ! :  NEXT 

1  : :  LF=1  : :  GOSUB  910 

: ;  GDSUB  970  : :  GOTO  40 
220  IF  K=3  THEN  BE=N  ELSE  E 

=  N 
230  GOSUB  1060  ::   GOTO  40 
240  SP-SP- (SP<>-15> « (K=5) + ( 

SP015)  t  (K  =  6>  :  1  GOSUB  1 

060  : !  GOTO  40 
250  DL  =  DL-  (DLO0)  t  (K  =  7)  +  (DL 

=0)»(K=7)tl50+(DL<>150) 

«  (K^S)  ~(DL=150)  »  (K  =  B)  «1 

S0  : :  GOSUB  1060  : :  GOT 

D  40 
260  BACK=BACK+1+ (BACK=16) «1 

4  :;  CALL  SCRE EN ( B ACK ) s 

5  RETURN 

270  FDRE=F0RE+1+ (FORE=li) « 1 
5  ! !  FOR  1=10  TO  14  : : 
CALL  CQLDRtI , FORE, 1 ) : ; 
NEXT  I   ::  CALL  C0L0R{9, 
FORE, 16) : :  RETURN 

280  GOSUB  320  '.  :      IF  A*="N" 
THEN  RETURN 

290  FOR  1=20  TO  N+1  STEP  -1 

:  :  E« ( I >  =E« ( I-l )  :  :  NEX 

T  I  5  :  Et (N) =RPT* ( "0"  , 6 

4)::  GOSUB  450  ::  GOSUB 

440  ! :  RETURN 

300  GOSUB  320  ::   IF  A«="N" 
THEN  RETURN 

310  FOR  1=N  TO  19  ::  E* i I ) = 
E* ( I  +  l)  :  :  NEXT  I  :  :  E« ( 
20) =RPT« ( "0", 64) : :  BOSU 
B  450  !  !  GOSUB  440  :  :  R 
ETURN 

320  DISPLAY  AT{12,4) s "ARE  Y 
DU  SURE  (Y/N) ?"  ! :  ACCE 
PT  AT ( 12, 24) VALIDATE ( "Y 

60     COMPUTEI      August  1985 


-^.l        23456789        jo 


I     ft  H  I  r  1 11 T  E     1     E  [I  I  I  3     S  T  R  P  T     PIC 

4     END     PIC     5     -SPEED     e     +SPEeB 
7     -  4  I.-  I  T  C  H     E     +  S  LI  T  T  C  H 


CiXJSERT     PIC         DCESLETE     PJC 
S<fi>VE  <;L>CFiD  ^C>LEflR    -RLL 


"TI  Animator"  makes  extensive  use  of 
redefined  character  graphics. 


N"  )  : A*  !  s  IF  A«="Y"  THE 
N  RETURN  ELSE  GOSUB  440 

: :  RETURN 
GOSUB  420  II  OPEN  ttl:D« 
, INTERNAL, OUTPUT, FIXED 
B0  ! I  PRINT  «1 ! FORE  : i 
PRINT  #1:BACK  :!  FOR  I- 
1  TO  20  !  :   PRINT  #1:E*( 
I  ) 

PRINT  #1  s IFLAB( I ) s !  NEX 
T  I 


330 

340 
350 

360 
370 

380 

390 

400 

410 

420 

430 
440 

450 
460 

470 

4B0 
490 
500 

510 


FOR  1-10  TO 
COLOR (I, FOR 
I  : I  CALL  S 


CLOSE  «1  It 

14  ::  CALL 

E, 1) : :  NEXT 

CREEN (BACK) 

IF  ASC(D«)-67  THEN  GOSU 
B  970  : :  RETURN  ELSE  GO 
SUB  440  : s  RETURN 
GOSUB  420  :i  OPEN  ttljD* 
, INTERNAL, INPUT  , FIXED 
80  1 !   INPUT  #1: FORE  s : 
INPUT  «1:BACK  ss  FOR  I- 
1  TO  20  S!  INPUT  «1:E*( 
I  ) 

INPUT  «1 ;  IFLAG ( I )  : i  NEX 
T  I  : :  GOSUB  450  ! :  GOT 
O  350 

GOSUB  320  ::   IF  A«="N" 
THEN  RETURN 

FDR  1=1  TO  20  : :  E* ( I ) = 
RPT* ( "0" ,64) ! :  NEXT  I  ! 
:  GOSUB  450  : :  GDSUB  44 

0  : :  RETURN 
F"F-(F=1 )tl0+(F-ll)«10 

: :  L^F+g  : :  GOSUB  450  : 

:  GOSUB  460  : i      RETURN 

DISPLAY  AT(12,1):Q$  :: 

ACCEPT  AT(13, 1) : D«  i :   I 

F  D«=""  THEN  GDSUB  440 

RETURN 

CALL  HCHAR ( 12, 1 , 32, 64) : 

s  RETURN 

J  =  0  :  :  FOR  I=F  TO  L  s  : 

CALL  CHAR ( 104+J«4,E* ( I ) 

)  !  s  J  =  J  +  1  :  :  NEXT  I  :  : 

RETURN 

CALL  HCHAR (9, 2, 32, 2)  !  : 

J-F+l  t I     FOR  1-2  TO  26 

STEP  3  ::  DISPLAY  AT<9, 

1  )  :  J  :  :  J  =  J  +  1  :  :  NEXT  I 
::  F«=STR*(F)::  DISPLA 

Y  AT(4, 1 ) iNj 

FOR  1=1  TO  LEN(F*)::  CA 
LL  HCHAR (9, l+I , ASC (SEG« 
(F«,  I ,  1 )  )  )  s  !  NEXT  I  :  : 
RETURN 
DISPLAY  AT ( 1 , 7) : "PLEASE 

WAIT. . . "  ; :  RETURN 
CALL  HCHAR ( 1 ,9, 32, 14) : ! 

RETURN 
DISPLAY  AT ( 12, 1 ) : "TYPE 
21  TO  ABORT,  A  »  1-20, 
OR  <ENTER>  FOR  CURRENT 

It   !  " 

ACCEPT  AT(13,27):A«  :: 
IF  A*-=""  THEN  PN  =  N  :  :  G 


520 

530 

540 
550 

560 


570 


580 


590 


600 


610 


620 

630 

640 

650 

660 

670 
680 


690 
700 


710 
7  20 


730 
740 
750 

760 
770 
780 


DTO 
IF  A 
N  51 
J-VA 
N  BO 
IF  J 
IF  J 
N  =  J 
IFLA 
LL  C 
2,  1) 
<4  S 
ISPL 

5-1 
DISP 

B 
(5,  2 
TO  M 
(24, 
=  1  : 
IF  I 

CHA 
E  CA 
U*) 
F«  =  E 
3  ST 
F«,  I 
>9)  « 
,1+2 
1  >9) 
D"-l 
IFLA 
=  0)  » 
PN)  = 
-  (  IF 
DISP 
«16, 

DIS 
)  *16 
:  :  N 
CALL 
9,  33 
Q=l 
CALL 
0  TH 
LSPR 
IF  K 
:  FL 
IF  K 
GOTO 
IF  K 
t  FL 
IF  K 
FOR 
CHAR 
XT  R 

620 
IF  K 
DFLA 
IFLA 
(PN) 
00,  " 
CHAR 

GOTO 
IF  K 
RITE 
UB  9 
GOTO 
IF  K 
:  :  D 
IF  K 
:  :  D 
IF  K 
LL  D 
DFLA 
10 

C-C  + 
)  t  16 
••68) 
R-R  + 
}  tl6 
=  88) 
CALL 


S60 

«<"1"  OR  A*>"9"  THE 

0 

L (A«)  :  : 

SUB  440 

>20  DR 

=N  THEN 


IF 


J=21  THE 
GOTO  40 
J<1  THEN  510 
PN=.N  ELSE  P 


G  (PN) 
LEAR 

1-MOV 
PACES>3 
AY  AT(3 
NVERSE 
LAY  AT( 
QUIT"  : 
) : " (USE 
OVE) "  ! 
7) : "FRA 
:  GOSUB 
FLAG (N) 
R ( 100, U 
LL  CHAR 

» (N)  :  : 
EP  2  :  : 
+1,1))- 

7   !  !   Dl 

, 1 ) ) -48 
*7 

5* ( IFLA 
G (PN) =1 
D  :  :  Dl 
I  )  +D1 » ( 
LAG (PN) 
LAY  fiT( 
3- ( I >31 
PLAY  AT 
, 7- ( I >3 
EXT  I 

SPRITE 
) t !  KHA 
:  !  R-  1 

KEY (0, 
EN  630 
ITE («1 ) 
=51  THE 
A6-0  : 1 
-49  THE 

800 
-50  THE 
AG-0 
052  TH 
R-1  TO 
(6+R, 5, 

:  :  DFL 


FLAG 

DIS 

E   2 

-ERA 

,  1  )  : 

6-DI 

4,1) 

:  Dl 

ARR 

Dl 

ME"; 

920 

=  1   T 

«,  10 

(  100 


(N) : :  CA 
PLAY  AT( 
-DRAW 
SE"  ! i  D 
"4-CLEAR 
SPLAY" 
: "7-SAVE 
SPLAY  AT 
OW  KEYS 
SPLAY  AT 
PN  ! :  GF 

HEN  CALL 
1 , " " ) ELS 
,"",101, 


FOR  1=0  TO  6 

D=ASC (SEG* ( 

48  :  ;  D«=D+  (D 

-ASC (SEG« {F« 

D1-D1+ (D 

G (PN) =1 )  +D«  ( 
)  - ( IFLAG (PN) 
=-15* ( IFLAG ( 
IFLAG(PN) =1) 
=0) *D1 

7+1/2+ ( I >31 ) 
) *a) : C« (D) I : 
(7+1/2+ ( I >31 
1 ] tB) sCS (Dl ) 

(#28, 96, 14,4 
R=101  : :  FLA 
1  !   C»l 

K,S) : I  IF  S= 
ELSE  CALL  DE 

N  KHAR=100  ! 

GOTO  790 
N  FLAG=1  : ; 


N  KHAR-101   : 

GOTO  790 
EN  690 

16  : :  CALL  H 
100, 16) : :  NE 
AG-0  II  GOTO 


053  TH 

G-0  :  s 
G (PN) -0 
=0  THEN 
",  101  ,U 
( 100, u« 


EN  720 
IFLAG(PN) =- ( 
)  !  !   IF  IFLAG 
CALL  CHARd 
»)ELSE  CALL 
,101,"") 


800 
-56  T 
(ALL) 
10  !  : 

40 
=  66  T 
FLA6- 
=  70  T 
FLAG- 
-54  0 
ELSPR 
G=l  T 


HEN  CALL 
i I  LF=1  : 
BOSUB  97 

HEN  GDSUB 

1 

HEN  GOSUB 

1 

R  K-55  TH 

ITE (ALL) : 

HEN  890  E 


DELSP 
:  GOS 
0  :  : 

260 

270 

EN  CA 

:   IF 
LSE  8 


(K«83>  +  (  (C-1 )  «  (K  =  B3 
) -(K-68)- ( (C-16) « (K 
(16) 

(K-69)  +  (  (R=I  )  «  <K  =  69 
)  -(K=>8B)  -  (  (R-16)  *  (K 
t  16) 
LOCATE (*Za,B»R+41, 


8«C+2S) ! !   IF  FUAB"1  THE 

N  Bna 

7'?0  DFLftE-0  i:  CALL  HCHflR  ( 6 
+R,4+C,KHAR) 

B00  CALL  SOUND (20, 200,5)  ;  ; 
GOTO  630 

810  SaSUB  480  ::  FDR  R-1  TO 

i&  I  !  FDR  C-1  TO  16  !  : 

CALL  GCHAR  (6  +  R,  4  +  C,  GO 

SI  GC-GC-100  ::  B(R,C)= 

GC  1 1  NEXT  C  : t      NEXT  R 

820  F«-""  ::   IF  IFLAG(PN)=0 
THEN  HEX«="01234567e9A 
BCDEF"  ELSE  HEX  *■=  "  FEDCB 
fl9S76543210" 

830  FOR  R-1  TD  16  : :  LDW-B ( 
R,5) »B  +  B(R,6>  «4  +  B<R,7)  » 
2+B<R, B>+1 

840  HIGH-B(R,  1)  te+B  (R,  2)  t4H- 
B(R,  3) t2  +  B (R, A>  +1 

850  F«»F«8iSEG«  (HEX»,  HIGH,  1  ) 
i<SEG«  (HEX«,LOM,  1  )  I  s  NEX 
T  R  :  :  FOR  R-1  TO  16 

B60  LOW=B(R, 13) »B+B (R, 14) «4 
+B (R, 15) «2+B<R, 16) +1 

B70  HIGH=B (R,9) «B+B (R, 10) t4 
+B<R, 11) «2+BCR, 12) +1 

BB0  F«-F«ScSE6«  (HEX«,HIGH,  1) 
&SEG«(HEX«, LOW,  1)  !  !  NEX 
T  R  I!  IF  K-54  THEN  DFL 
AG-1 

B90  IF  K-55  THEN  E*(PN)-F« 
s :  LF-1  ! :  GOSUB  910  : : 
GOSUB  970  ::  GOTO  40 

900  CALL  MAGNIFY  (4)  :  -.  CALL 
CHAR <36, F«) : :  GDSUB  490 
:j  call  SPRITE (#1 , 36, F 
DRE, 80, 173) : :  GOTO  620 

910  CALL  CHAR t33,RPT* ( "81" , 
O)  ,36,RPT«("0"  ,  14)  S<"FF" 
,  37,  "FF"!<RPT«  (  "0",  14)  ,  3 
B,RPT«  (  "01"',a)  ,39,RPT»  ( 
"B0",8))!!  IF  LF"1  THEN 
LF  =  0  i  i  RETURN 

920  U*=RPT» ("F" , 16> : :  CALL 
CHAR( 100, "", 101 , U«,9  6, " 
F09090F"&RPT» ( "0",57) ) ! 
}  CALL  COLOR (9, FORE,  16) 
!  !  IF  BF-1  THEN  GF"0  t  : 
RETURN 

930  F«°"000000010010001 1010 

0010101 1001 1 1 1000  1001 10 

1010111100110111101111" 

940  FDR  1=0  TO  15  ::  Z*=SEG 

*(F«, 1*4+1,4) ! !  D$=" " 


950  FDR  J  =  l  TO  4  !  !   T"iVAL(S 

EB«  (Z», J,  1 )  )  +100  :!   D«  = 

DtiCHR*  <T)  s  :  NEXT  J  :  ! 

C«(I)=D»  :!  NEXT  I 
960  FDR  1  =  1  TO  20  ::   E*  (I  )  =■ 

RPT« ( "0" , 64) ! ;  NEXT  I  : 

:  RETURN 
970  CALL  CLEAR  ::   DISPLAY  A 

T  < 1 ,  10)  :  "ANIMATOR"  :  :  C 

ALL  HCHAR (4, 2, 35) : :  DIS 

PLAY  AT (4, 5>  s  "B  = 

{4  SPACES>E=<4  SPACES>S 

P-C4  SPACES>D=" 


980 

990 
1000 

1010 
1020 

1030 
1040 

1050 
1060 


CALL  VCHA 
CALL  VCHA 

FOR  1=2 
s   CALL  HC 
:   CALL  HC 


,37,2) 

FOR 


1=4  TD  28 
CALL  yCHAR<6 
NEXT  I  : :  GO 
GOSUB  450  : : 


QOSUB  1060  : 

R (6, 1 , 38, 2) : 

R(6,31 , 39,2) 

TO  29  STEP  3 

HAR (5,1, 36, 2) 

HAR (B, I 

NEXT  I  : 
STEP  3 

. 1,33,2) 

SUB  460 
J»104 

FOR  1=2  TO  29  STEP  3  : 
:  CALL  HCHAR (6, I , J) : s 
CALL  HCHAR (6, I+l , J+2) : 
;  CALL  HCHAR (7,  I  ,  J+1  )  : 
:  CALL  HCHAR (7, I+l , J+3 
>  i  :  J=J+4  :  :  NEXT  I 
CALL  HCHAR ( 15, 1 , 49) : ! 
CALL  HCHAR ( 16, 1 , 52) : ! 
CALL  HCHAR (17, I , 55) 
DISPLAY  AT ( 15, 1 ) : "ANIM 
ATE  2  EDIT{3  SPACES>3 
START  PIC"  ! :  DISPLAY 
AT ( 16, 1 ) : "END  PIC  5  -B 
PEED  6  +SPEED" 
DISPLAY  AT ( 17,  1  )  :  "-SWI 
TCH  8  +SWITCH" 
DISPLAY  AT (20,  1  )  !  "  (  I  ) N 
SERT  PIC   D(E)LETE  PIC 
"  :  :  DISPLAY  AT  (21  ,  1 )  ! 
"S(A)VE    (DDAD    (OLE 
AR  ALL" 

DISPLAY  AT (22, 1 ) I " (N) E 
XT  GROUPtt  SPACES} (Q)U 
IT"  : :  RETURN 
DISPLAY  AT (4, 7) : BE; : : 
DISPLAY  AT (4, 13) : E; : : 
DISPLAY  AT (4, 20) : SP; : : 
DISPLAY  AT (4, 26) : STR* 
(DL)  ScSEGS  (  "  C3  SPACES}" 
, 1 , 3-LEN (STR* (DL) ) ) ; : : 
RETURN  © 


Learn  Computer 
Programming 
ThelCSWay... 


fordabie. 
We, 
ging! 


w 


■^^W>^     i 


i<, 


J 


I  rain  al  home  in  spare  time!  No  previous  experi- 
ence needed!  Now  you  can  learn  it  all!  Computer 
programming... computer  applications. -Computer 
games  ..everyltiing  you  ever  wanted  to  knov*  atroul 
computer  operation!  Wnie  your  own  computer  pro- 
grams or  use  tiundreds  of  programs  already 
available. ..budgeting,  real  estate,  bookkeeping, 
expenses,  investments,  interest,  taxes,  stropping 
lists,  vacation  planning,  addresses,  ptione  numbers, 
routing,. .even  foreign  languages  andgraptiics. 

You  II  know  wtial  really  happens  wtien  you  have  a  computer 
problem  wiih  a  bank,  store,  loan  company,  oil  company.  uti|, 
'ly  or  anyone  else.  Voull  be  able  lo  lalk  itieir  language 
understand  wtiy  and  how  things  happen  Vou  II  be  able  to 
take  the  olfensive  when  yojre  the  viclim  ol  a  computer 
et fof  Experts  explain  everything  in  easy-to  uiiderstand  lan- 
guage with  atep-by-step  directions  Computer  included  wiihi 
your  training    plugs  into  your  TV  SEND  FOR  FREE  FACTS  { 


ICS 


COMPUTER  TRAINING,  ^mn 

^'"^  ^"'i  Scranton.  Pennsylvania  18515 
Rush  me  free  fads  thai  lell  haw  I  can  learn  computer  appli- 
calions,  programming  and  operalion  at  home  ^n  spare  time 
No  cost  No  obijgation  No  salesman  will  visii  you' 


Nar^E , 


Ape  - 


Ad>dr€ss  _ 


CitY  StateZip  _ 


Lr  iiuiiB  nu.  I  I  <_^ 

■    ^^    ^^   ^^    ^iH    ^^  ^mm   mtm   ^mm   aaii   tmmm   ^^   ^^  i 


We  wrote  the  book  on  the  ATARI-ST 

First  there  was  the  fabulously  successful  VIC-20.  Then  came  the  record- 
breaking  Commodore-64. 

Now  Jack  Tramiel  has  launched  his  third  home  computer,  the  ATARI  ST. 
The  ST  promises  to  shatter  all  exciting  price-performance  barriers  and 
become  a  leader  in  the  home-computer  market. 
This  book,  PRESENTING  THE  ATARI  STgives  you  an  in-depth  look  at  this 
sensational  new  computer  that  promises  to  bring  you...  "Power  without 
the  Price."  Some  of  the  topics  include:  •  History  of  Atari  •  Overview 
of  the  ST  •  Construction,  Operating  System  •Peripherals  •Languages 
•  User  Programs,  and  more. 

PRICE   $1  6.95     TO  ORDER:  SEND  CHECK,  MONEY  ORDER  OR  CHARGE  NO.  TO: 

Abacus  liiii  Software 


P.O.  BOX  7211  GRAND  RAPIDS,  Ml  49510  -  Fast  Service,  Phone  616-241-5510 


Archive: 

Two-Drive  Backup 

for  Commodore  64 


Philip  I,  Nelson,  Assistant  Editor 


Now  you  can  copy  entire  disks  at 
machine  language  speed  zvith  this 
convenient  backup  program  for  the 
Commodore  64  with  two  1541  disk 
drives.  It  also  works  on  the  now  Com- 
modore 128  in  64  mode. 


Sooner  or  later  it's  bound  to  hap- 
pen. You'll  make  an  unconscious 
error,  or  lightning  may  strike  while 
you're  resaving  a  program,  or  the 
family  dog  will  chew  a  few  disks  for 
dinner — and  an  important  disk  will 
be  utterly  destroyed.  If  you  have  a 
backup  copy,  of  course,  such  acci- 
dents aren't  fatal.  You  take  a  mo- 
ment to  pat  yourself  on  the  back, 
pull  out  the  archive  disk,  and  go 
back  to  work. 

If  you  don't  have  a  backup,  it's 
like  watching  a  gold  ring  slip  off 
your  finger  and  go  clanking  down 
the  drain.  In  the  long  hours  spent 
reconstructing  what  you've  lost, 
you  have  plenty  of  time  to  reflect 
on  the  wisdom  of  archiving  your 
work  on  a  regular  basis. 

Archiving  is  one  of  those  grim 
tasks  that's  easy  to  postpone. 
BASIC  programs  (like  COPY/ALL 
on  your  1541  Test/Demo  disk)  are 
slow,  and  may  not  copy  machine 
language  (ML)  programs  or  sequen- 
tial files.  Even  good  single-drive 
backup  programs  keep  you  tied  to 
the  computer,  tapping  your  fingers 
until  it's  time  for  the  next  disk 
swap. 

Fast  And  Convenient 

"Archive"  offers  a  better  way:  It 
links  two  drives  together  to  take  the 


misery  out  of  backing  up  important 
disks.  To  speed  things  up,  it's  writ- 
ten entirely  in  machine  language 
and  copies  only  those  disk  sectors 
which  actually  contain  data.  But  be- 
cause it  loads  and  runs  just  like  a 
BASIC  program,  it's  easy  for  any- 
one to  use,  even  beginners. 

You  may  find  this  program 
valuable  even  if  you  don't  own  two 
disk  drives.  Put  your  drive  together 
with  a  friend's  and  swap  several 
disks  during  one  session.  Or  bring  it 
to  a  user  group  meeting  to  speed  up 
the  duplication  of  public  domain 
library  disks.  Since  1541-format 
disks  work  with  other  Commodore 
computers,  Archive  running  on  a 
Commodore  64  can  also  copy  disks 
that  will  be  used  with  the  Commo- 
dore 128,  VIC-20,  Plus/4,  16,  and 
4040-format  PET/CBM.  (Of 
course,  a  program  written  for  one  of 
these  machines  may  not  work  on 
another.  Also,  Archive  cannot  copy 
Commodore  128  CP/M  disks.) 

Archive  has  been  tested  suc- 
cessfully on  the  Commodore  128  in 
64  mode  with  two  1541  drives.  If 
the  new  1571  drives  are  truly  1541- 
compatible,  Archive  will  work  with 
them  as  well,  since  it  uses  standard 
Commodore  disk  commands.  How- 
ever, the  1571  was  not  available  for 
testing  when  this  article  was 
written. 

Incidentally,  Archive  cannot 
duplicate  commercially  protected 
software.  Protected  disks  invariably 
contain  deliberate  errors  (which 
shut  down  the  program)  or  data 
hidden  in  unused  sectors  (which 
Archive  does  not  copy). 


Getting  Started 

Enter  and  save  Archive  using  the 
MLX  machine  language  entry  pro- 
gram published  elsewhere  in  this 
issue.  Here's  the  information  you 
need: 

Starting  address:  49152 
Ending  address:  51185 

After  you  save  Archive,  acti- 
vate it  like  a  BASIC  program  by 
typing  L0AD"ARCH1VE",8  fol- 
lowed by  RUN.  (For  this  program, 
do  not  use  ,8,1  after  the  LOAD;  just 
use  ,8.)  If  you're  already  comfort- 
able using  two  drives,  you  needn't 
read  any  further,  since  Archive 
prompts  you  at  each  step.  Just  pop  a 
disk  in  each  drive  as  instructed, 
press  the  f7  special  function  key, 
and  relax  while  Archive  does  its 
work.  (If  you've  never  used  two 
drives  before,  see  "Setting  Up  Your 
System"  below.) 

Archive  displays  your  source 
disk's  Block  Availability  Map 
(BAM)  graphically  on  the  screen, 
updating  the  display  as  copying 
proceeds.  Thus,  you  can  tell  at  a 
glance  how  much  of  the  disk  is  used 
and  how  much  has  been  copied. 
The  number  at  the  lower  right  of 
the  screen  shows  the  sector  being 
copied;  the  graphic  display  shows 
which  sectors  have  already  been 
copied. 

If  you  want  to  abort  the  copy 
for  any  reason,  press  the  f  1  special 
function  key  to  return  to  BASIC. 
(When  you  abort  the  copy  process, 
the  archive  disk  is  incomplete  and 
may  be  garbled.  You  can  reuse  it 
immediately  with  Archive,  but  do 
not  use  it  for  anything  else  without 
reformatting  it  as  explained  below.) 


62     COMPUTEl     August  1985 


Once  the  copy  is  done,  press  the  f3 
function  key  to  copy  another  disk, 
or  press  fl  to  quit.  Whenever  you 
exit  Archive,  it  clears  the  screen  and 
reports  the  status  of  each  drive. 

Quick  Formatting 

Since  Archive  always  makes  a  com- 
plete disk  copy,  it  formats  the  ar- 
chive disk  with  a  NEW  command. 
Formatting  renames  the  disk  and 
erases   everything   it   contained 


Figure  1  shows  how  to  daisy-chain 

two  drives  to  your  computer.  Con- 
nect the  first  drive  as  usual,  then 
plug  the  serial  cable  from  the  sec- 
ond drive  into  the  extra  serial  port 
connector  on  the  first  drive. 

When  more  than  one  disk 
drive  is  active,  each  drive  must  be 
given  a  different  device  number  so 
the  computer  can  tell  them  apart. 
The  1541  is  factory -set  as  device  8, 
but  it  can  also  have  device  numbers 


OPEN  15,8,15 
PRINT#15,"M-W"CHRS(119) 

CHR$(0)CHRS(2)  CHRSOZ + 9) 

CHR$(64  +  9) 
CLOSE15 

2.  It's  a  good  idea  to  verify  the 
device  number  change.  Put  a  disk 
in  the  drive,  then  type  LOAD"$",9 
and  press  RETURN  to  load  its  di- 
rectory. After  the  blinking  cursor 
returns,  type  LIST  and  press  RE- 
TURN. If  you  see  the  directory,  the 


Daisy-Chaining  TWo  Disl<  Drives 


The  second  drive  is  plugged  into  the  first  drive's  extra  serial  port  connector  (rear  view). 


before.  You'll  notice  that  the  ar- 
chive disk  is  formatted  in  only  a  few 
seconds  rather  than  the  usual  cou- 
ple of  minutes,  and  without  the 
usual  knocking  sound.  To  save  time 
and  minimize  wear  on  the  drive. 
Archive  uses  a  shortened  NEW 
command:  the  equivalent  of  OPEN 
15,8,15, "NO:/!ie«ame"  without  a 
disk  ID. 

The  abbreviated  NEW  com- 
mand works  only  on  a  disk  that  has 
been  previously  formatted.  To  use  a 
brand  new  disk,  you  must  prepare 
it  first  with  a  full  NEW  command: 
OPEN15,8,15,"N0:/i7enflme,/D".The 
filename  can  be  up  to  16  characters 
long.  The  ID  can  be  any  two  letters  or 
numbers  and  should  be  unique  for 
each  disk.  The  1541  User's  Manual 
contains  more  information  about  for- 
matting disks. 

Setting  Up  Your  System 

Although  the  Commodore  64  has 
only  one  serial  port  connector,  the 
1541  disk  drive  has  two,  letting  you 
hook  up  more  than  one  drive  at  a 
time.  Since  the  drives  are  chained 
together  in  a  series,  this  arrange- 
ment is  often  called  daisy-chaining. 


9-15.  Archive  uses  device  numbers 
8  and  9,  reading  from  drive  8  and 
copying  to  drive  9.  You  must  always 
put  the  source  disk  (the  original)  in 
the  drive  that's  device  8  and  the  ar- 
chive disk  (the  copy)  in  the  drive 
that's  device  9. 

If  both  of  your  drives  are  de- 
vice 8,  don't  despair.  You  can  easily 
change  one  of  them  to  device  9.  The 
change  is  temporary;  the  drive  re- 
verts to  device  8  when  you  turn  off 
the  power.  Here's  the  procedure; 
1.  Turn  on  the  drive  that  you  want 
to  change  to  device  9.  Make  sure  the 
other  drive  is  turned  off.  Now  you 
can  change  the  device  number 
either  by  running  the  DISK  ADDR 
CHANGE  utility  program  on  your 
1541  Test/Demo  disk,  or  by  typing 
in  direct  statements. 

To  use  DISK  ADDR  CHANGE, 
load  the  program  from  the  1541 
Test/Demo  disk  and  enter  RUN. 
Follow  the  program's  instructions, 
then  skip  to  Step  2  below. 

You  can  also  change  the  device 
number  by  entering  the  following 
statements  in  direct  mode  (with  no 
line  numbers).  Press  RETURN  after 
you  type  each  line: 


change  worked  and  you  may  pro- 
ceed to  step  3.  If  you  get  an  error 
(probably  7DEVICE  NOT  PRE- 
SENT), turn  off  the  drive  and  repeat 
step  1. 

3.  Turn  on  the  other  drive.  This 
drive  will  remain  device  8  (the 
source  drive).  Now  load  and  run 
Archive,  inserting  the  disks  as  ex- 
plained in  the  instructions.  The 
source  (original)  disk  goes  in  device 
8,  and  the  archive  (copy)  disk  goes 
in  device  9.  As  an  additional  pre- 
caution, you  may  want  to  write- 
protect  the  source  disk  by  taping 
over  the  notch  in  the  sleeve. 

In  theory  you  can  daisy-chain 
several  drives  to  a  64,  but  in  fact  the 
1541  doesn't  enjoy  sharing  the  seri- 
al bus.  The  drives  should  always  be 
turned  on  one  at  a  time,  not  simul- 
taneously (as  would  happen  with  a 
power  strip).  Printer  interfaces  that 
draw  power  from  the  64's  cassette 
port  are  notorious  for  causing  disk 
errors,  and  other  peripherals  can 
affect  system  voltage  levels  even  if 
they're  not  turned  on.  Depending 
on  your  system,  you  may  need  to 
unplug  other  peripherals  before 
using  Archive. 


August  1985    COMPUTEI     63 


Trusted  Software  and 


LANGUAGE  SOFTWARE 


FOR  COMMODORE  COMPUTER) 


ADA  TRAINING  COURSE 

Teaches  you  ihe  language  of  the  fulurc. 
Comprehensive  subset  of  language. 
Includes:  editor;  syntax  checker, 
compiler;  assembler;  disassembler, 
handbook.  $59.95 


ASSEMBLER/MONITOR-64 

Macro  assembler  and  extended  monitor. 
Supports  all  standard  functions  plus 
floating  point  constants  Monitor 
supports  bank  switching,  quick  trace, 
single  step,  more.  $39,95 

BASIC  COMPILER  64 

Compiles  complete  BASIC  language 
into  cither  fast  6510  machine  language 
and/or  compact  specdcodc.  Supports 
overlays  and  many  extended  BASIC 
commands.  $39.95 


C  LANGUAGE  COMPILER 

Full  compiler  per  Kcrnighan  &  Ritchie 
standard,  but  without  bit  fields.  Includes 
powerful  editor  (4 IK  source  file);  com- 
piler (6510  code),  library  (supports  many 
functions)  and  linker.        sv.W.      $79.95 


FORTH-64    LANGUAGE 

Based  on  Forth  79  (+  parts  of  '83). 
Supports  hires  graphics  and  sound 
synthesizer.  Full  screen  editor, 
programming  tools,  assembler,  samples, 
handbook.  NKWI    S39.95 


t    FORTH     I 


MASTER-64 

Professional  development  package  for 
serious  applications.  Indexed  file  sys- 
tem, ftjll  screen  &  printer  management, 
programmcr'.s  aid,  multiprccision  math, 
royalty-free  runtime,  more.  $39.95 


[    MASTER^ 


PASCAL-64 

Full  Pascal  supports  graphics,  sprites, 
file  management,  more.  Supports 
pointers,  dynamic  memory  man- 
agement, machine  language.  Compiles 
to  fast  6510  machine  code.  $39.95 


Pascal 


VIDEO  BASIC-64 

Add  50t  graphic,  sound  and  utility 
commands  to  your  progr.ams  with  this 
super  development  package.  Free 
distribution  of  RUNTIME  version  -  no 
royalties!  $59.95 

XREF-64      Basic  cross-reference 

Indispcnsibic  tool  for  B.^SIC  pro- 
grammer. Cross-references  all  refer- 
ences to  variables,  constant.s  and  line 
numbers.  Sorts  ihcm  into  alphabetical 
order  for  convenient  uses.  $1 7,95 


REFERENCE  BOOKS 


ANATOMY  OF  C-64  Insider's  guide  to 
the  '64  internals.  Graptiics,  sound,  I/O, 
kcrnat,  memory  maps,  more.  Complete 
commented  ROM  listings.   300pp  $19.95 

ANATOMY  OF  1541  DRIVE  Best 
handbook  on  floppy  explains  all.  Many 
examples  and  utilities.  Fully  commented 
1541  ROM  listings.  320pp      S19.9S 

M.\CHINE  LANGUAGE  C-64  Learn 
6510  code  write  fast  programs.  Many 
samples  &  listings  for  complete  assembler, 
monitor,  simulator.  200pp     $14.95 

GRAPHICS  ROOK  C-64  -best  ref- 
erence covers  basic  and  advanced  graphics. 
Sprites,  animation,  Hires,  Multicolor, 
lightpen,  :iD-graphics,  IRQ,  CAD,  pro- 
jections, curves, more.        3S0pp     $19.95 


TRICKS  &  TIPS  FOR  C-64  Col- 
ection  of  easy-to-use  techniques:  advanced 
graphics,  improved  data  input,  enhanced 
BASIC,   CP/M,  more.        275pp     $19.95 

1541   REPAIR   &   MAINTP:NANCE 

Handbook  descnlies  the  disk  drive  hard- 
ware. Includes  schematics  and  techniques  to 
keep  1541  running.  200pp     $19,95 

ADVANCED  MACHINE  LANGUAGE 

Not  covered  elsewhere;  -  video  controller, 
interrupts,  timers,  clocks,  I/O,  real  time, 
extended  BASIC,  more.    210pp     $14.95 

PRINTER     BOOK     C-64/VIC-20 

Understand  Commodore;  Epson-compatible 
printers;  1520  plotter.  Packed:  utilities;  gra- 
phics dump;  3D-plotl;  commented  MPS80I 
ROM   listings,  more.        330pp     $19.95 


PRODUCTIVITY  TOOLS 


CHARTPAK-64 

MARK  YOLR  OWN  CHARTS... 

Professional  Quality  charts  and  graphs  in.stantly. 

Easy-to-use  menus.  8  chan  formats,  Two  si?.e 

hardcopy.      Accepts  data   from   Multiplan, 

CalcRosult.  Supports  statistical  functions.  $39.95 

Also  available; 

CHART1>LOT-1S20  fine  output 

to  incipensive   1520  plotter.  $39.95 

CHARTPI,OT-64  unsurpassed 

quality  chart.s  on  most  XY-plolters.  $84.95 


1 


EKTIC     flUTO     SftLFS 


-DLHtRrtU     no  TO 

^  r  OW& 

-CHRVSLCR 

3  'flMF  R  I  criH    nor 


QH     67      SQ      flf)      SQ 

PRO  JC  C  TE  D      VL  AR 


POWER  PLAN-64 

POWER  f'LAN  is  our  top-rated,  fuli-fealurcd 
spreadsheet  for  both  your  business  and  personal 
needs.  All  menu  selections  are  clearly  displayed  on 
screen.  Builtin  HELP  screens  guide  you  through 
this  powerful  package.  Immediately  make  2D  or 
3D  pie,  bar,  line  and  point  to  point  graphs  from 
your  spreadsheet  using  up  to  8  windows.  Features 
cell  protection  and  formatting,  split  screen,  all 
major  math  functions,  25K  worksheet  space,  255 
rows  X  63  columns.  20(1  page  handbook.  $49.95 


Super  Spreadsheet  with  Graph 


.;*-< 

1.5^.,.-:    rrr 

I'i!? 

CADPAK-64 

DETAIL  YOUR  DESIGNS.... 

Superb  liglilpen  design  tool.  Exact  placement 
using  Accu-Poinl  positioning;  2  complete  screens; 
draw  LINES,  QOXes,  CtRCLEs,  ELLIPSES; 
pattern  FILLing;  freehand  DRAW;  screen  COPY; 
ZOOM  for  detail.  Two  size  hard-copy.  Requires 
good  quality  lighlpcn.  $49.95 


li^i^L^p — I 

*   <r^ -- — » 


ChMIK-tiMi  HSiir  ml» 


It^' 


V  nilmr 


l5t 


Authoritative  booics 


FROM  ABACUS  SOFTWARE 

...  A  NAME  YOU  CAN  COUNT  ON 


SPECIAL  FEATURE 

XPER  -  Software  that  Learns 


Optional  Diskettes 
for  books 

Por  your  convenience,  the  programs 
contained  in  each  of  our  books  arc  available 
on  disketlE  to  save  you  tirnc  entering  ihem 
from  your  keyboard.  Specify  name  of  book 
when  ordering.  $14.95  each 


SCIENCE/ENGINEERING   ON  C-64  I'EKKS    &    POKES    .programming 

In  dcplh  intro  (o  computers  in  science,  quickies  that  will  ainazi  you,  Includes  in- 

Topics;  chemistry,  physics,  biolofiy,  astro-  depth  explanations  of  PEEK,  POKE,  USR 

nomy,  electronics,  others.  3S0pp  $19.95  and  other  commands.        200pp     $14.95 

CASSETTE     BOOK      C-64/V1C-20  .ADVENTLRE  GAMEWRITER's  H.ndbook 

Comprehensive  guide;  many  sample  nro-  Step-by-step  guide  to  designing  and  writing 

grams.  High  speed  operating  syslcm-fasl  your  own  adventure  games.  With  automated 

file  loading  and  saving.       22Spp   $14,95  adventure  game  generator.  200pp  $14.95 

IDEAS  FOR  USE  ON  C-64  Themes:  CAD   BOOK   for   C-64/C.I28   intro- 

auto  expenses,  calculator,  recipe  file,  stock  duction  to  computer  aided  design.  2D  and 

lists,    diet  planner,  window  advertising,  3D,   reflection,  zoominj;,  macros.  Samples 

others.  Includes  li.siings.     200pp    $12.95  use-SIMDN's  Basic.          25npp     $19.95 


COMPILER    BOOK    C-64/C-128  All 

you  need  to  know  about  compilers:  how 
they  work;  designing  and  writing  your  own; 
generating  machine  code.  With  working 
example  compiler.  300pd    SI9,95 


MORE  TRICKS  &  TIPS  Dozens  of 
more  helpful  programming  techniques;  soft- 
ware protection;  new  BASIC  commands; 
interrupts;  ROM  routines;  the  KERNAL, 
hardware  tins.  etc.  250pp     $19.95 


Other  Books  Coming  Soon!! 


1 

Soerlij 

H    ""•    1 

Vhil  kind  *f 

-1 

Lujiury 

]~|No(   Av|-l4b]«| 

'jftj  willing  14 

1 

rco^emy 

H  c......  1 

r 

S?=rl4 

^     C«r-r»tt»     1 

-i_ 

Luxury 

\4Coop*  OrV.;i*.| 

1 

tc^nonnj 

l-lLyHUiJU'r+j 

Ar-.  xrCR  Applicotion  advising 
an  what  kind  ot  cor  la  buy 

XPER  is  ihc  rir.sl  expert  system  for  the  C-64  and  C-128. 
Ordinary  data  bases  arc  good  for  reproducing  facts,  bui 
XPKR  lets  you  derive  knowledge  from  a  mounlain  of 
facts  and  liclps  you  make  expert  decisions.  Scicnlisls, 
doctors  and  professionals  arc  currently  using  XPER  in 
their  research  projects. 

The  XPEK  system  puts  your  information  into  a 
knowledge  base.  A  knowledge  base  cconsisLs  of  a  variable 
number  of  objects  -  such  as  trees;  features  -  such  as 
"what  kind  of  leaf  docs  it  have?";  and  attributes  ■  such  as 
6  inch  needles.  After  describing  your  knowledge  base,  you 
can  easily  enter  your  information  using  XPER's  complete 
cntry/maintcnancc  facilities. 

Then,  XPICR's  very  efficient  searching  techniques  will 
guide  you  through  the  most  complex  decision  making 
criteria.  You'll  also  benefit  from  XPER's  full  reporting 
capabilities  and  case  of  use.  $59.95 


TAS-64 

CHART  YOUR  OWN  STOCKS... 

Sophisticated  technical  analysis  charting  package 
for  serious  investor.  Capture  data  from  D.IN/RS 
or  Warner  Services  or  enter  and  edit  your  data,  7 
moving  averages,  3  oscillators,  trading  bands, 
least  squares,  5  volume  indicators,  relative  chan.s, 
much  more.  Two  size  hardcopy.  $84.95 


DATAMAT-64 

ORGANIZE  YOUR  DATA... 

Powerful,  easy-to-use  data  management  package 
uses  menu  selections.  Free  form  design:  50 
field.t'record;  2000  records/disk.  Sort  on  mul- 
tiple fields  in  any  combination.  Complete  selec- 
tion and  formatting  for  printing  reports.     $39.95 


INVENTORV    Flt.E 

U*a   Muab*r 

O»*criot  lO?'^ 

*^ 

OnttanO 

PrlC« 



^. 

LKitton 

Rtflrd.    Pt,^ 

^*OfQ, 

ai¥j_ 

_* 

TEXTOMAT-64 

WORD  PROCESSING 

Flexible  word  processor  displays  40  or  80  columns 
with  horizontal  scrolling,  Menu  selections  make 
TEXTOMAT  easy  to  u.se.  Quickly  move  from 
editing  to  formatting  to  merging  to  utilities. 
Supports  virtualSy  any  printer.  Can  support 
foreign  languages.  $39.95 


TIXT 

Fts  Fut 

Wo  ^«' 
'in  Tffo 
ONLl  Iro 
0 


TEXTOMAT 
FuLL 

Worl 
rrae«jjor 
ONLY  aiflS 


sS. 


vS^- 


QUICKCOPY  V2.0 

PROTECT    Your  DATA  ... 

Backup  your  valuable  data  with  Uie  fastest  disk 
copier  we've  seen  to  dale.  Copies  entire  disk  in 
2,5  minutes  on  two  or  3.5  minutes  on  one  1541. 
Very  useful  utility.  $19.95 


ORDERING  INFORMATION 


1 


Call  now  for  the  name  of  your  nearest  dealer 


Abacus  l^ffll  Software 

P.O.  Box  721 1    Grand  Rapids,  Michigan  4951 0 


MasterCard 


For  postage  and  handlrng  include  $4.00  per  order.  Foreign  orders  include  S8,00  per 
item.  Money  order  and  checks  in  U.S.  Dollars  only.  Mastercard,  VISA  and  American 
Express  accepted.  Michigan  residents  please  include  4%  sales  laj<. 

For  fast  service  call    (616)  241-5510       Telex  709-101 

For  free  catalog,  please  return  this  coupon  to 
Abacus  Software,  P.O.  Box  7211,  Grand  Rapids,  Ml  49510 

PHONE:  (616y  241-5510 


Name 
Address 
City 
State 


zip 


CKnpu:e8,a5 


Initialization 

Before  it  starts  copying.  Archive  ini- 
tializes each  disk  to  test  whether 
devices  8  and  9  are  active  and.  if 
each  contains  a  formatted  disk.  The 
initialization  command  transfers 
information  (disk  name,  ID,  etc.) 
from  the  disk  into  the  drive's  mem- 
ory to  prepare  it  for  handling  the 
disk. 

If  this  step  fails,  it  means  one  of 
the  drives  is  not  ready  to  go.  Ar- 
chive displays  the  status  of  both 
drives  and  returns  you  to  BASIC.  (If 
you  forget  to  change  one  of  the 
drives  to  device  9,  Archive  can't 
read  its  status;  press  RUN/STOP 
-RESTORE  and  proceed  as  ex- 
plained below).  Enter  these  lines  in 
direct  mode  (without  a  line  num- 
ber) to  retry  the  initialization: 

OPEN  1 5,8,15, "I0":CLOSE  15 
OPEN  15,9,15,  "I0":CLOSE  15 

When  you  enter  each  line,  the 
drive  motor  should  run  and  its  red 
light  should  glow.  After  one  or  two 
seconds  the  red  light  should  go  off 
and  stay  off,  and  you  should  be  able 
to  run  Archive.  If  one  or  both  of  the 
red  lights  blink  continuously,  turn 
off  both  drives  and  repeat  the  setup 
process.  The  drive  makes  a  knock- 
ing sound  if  you  forget  to  insert  a 
disk  or  try  to  use  an  unformatted 
disk  for  the  archive. 

Is  Your  Drive  Healthy? 

In  ordinary  use  your  drive  works 
intermittently.  It  may  spend  30  sec- 
onds loading  a  game  for  you,  then 
sit  idle  for  30  minutes  while  you 
play.  Copying  a  full  disk  with  Ar- 
chive is  far  more  demanding  work, 
requiring  several  minutes  of  contin- 
uous running.  If  one  of  your  drives 
is  misaligned,  tends  to  overheat,  or 
has  other  mechanical  problems, 
don't  be  surprised  if  you  experience 
occasional  errors.  When  an  error 
occurs  during  the  copy  process.  Ar- 
chive stops  copying,  reports  the  sta- 
tus of  both  drives,  and  returns  to 
BASIC. 

Such  errors  are  especially  like- 
ly to  crop  up  when  the  source  disk 
is  nearly  full.  For  mechanical  rea- 
sons it's  harder  for  the  drive  to  ac- 
cess the  disk's  outer  area  than  the 
area  near  the  middle.  To  make 
things  easy  on  itself,  the  drive  al- 
ways starts  storing  programs  in  the 
middle  of  the  disk,  leaving  the  out- 
er tracks   empty   until   there's   no 


room  left  elsewhere. 

Archive's  BAM  display  lets 
you  observe  this  storage  scheme. 
When  the  source  disk  contains  only 
a  few  programs,  they'll  all  be  stored 
in  middle  tracks  (near  track  18),  The 
outermost  tracks  (1  and  35)  are 
usually  the  last  to  be  used.  If  your 
drive  consistently  has  trouble  ac- 
cessing outer  tracks,  it's  probably 
misaligned.  The  same  problem  can 
result  if  the  disk  was  formatted  on  a 
badly  misaligned  drive. 

1541  ML  Programming 

To  shorten  and  speed  up  the  pro- 
gram, all  of  Archive's  21  variables 
and  pointers  are  located  in  the  zero 
page  (lowest  256  bytes)  of  memory. 
Zero  page  machine  language  in- 
structions run  faster  and  use  less 
memory  than  instructions  that  ref- 
erence higher  memory  addresses. 
The  computer  can  find  what  it 
needs  by  checking  only  one  byte, 
rather  than  wading  through  a  two- 
byte  address  in  search  of  the  same 
information.  In  time-critical  pro- 
grams like  Archive,  which  execute 
certain  routines  many  thousands  of 
times  a  minute,  the  microseconds 
you  save  can  add  up  to  a  significant 
difference  in  running  time. 

Many  programmers  have  trou- 
ble learning  to  handle  disk  files  in 
machine  language.  For  those  who 
are  interested,  here's  an  outline  of 
Archive's  main  routines. 


$0852-0863  Initialize  device  8 

$0864-0878  Initialize  device  9 

S0879-0918  Enor— report  status 

S0919-0981  Read  BAM  from  source  disk 

$0982-0A32  Display  BAM  and  disk  name 

SDA33-0A7E  Short  NEW  destination  disk 

S0A7F-0A8F  OPEN  3,8,15  command  channel 

S0A90-0AA0  OPEN  5,9,15  command  channel 

SOAAl-QAB'l  OPEN  4,8,4,"#"  buffer  cliannel 

SOAB5-0AC8  OPEN  6,9,6,"#"  buffer  channel 

S0B94-0C42  Subroutine— copy  a  block 

$0BCE-0C04  Read  block  from  source  disk 

SOC0S-OC42  Write  block  to  archive  disk 

S0C43-0C5C  Subroutine — initialize  disk 

SOC94-OCA4  Subroutine — check  error  channel 

SOCCO-OCCB  string— BAM  Block  Read  (Ul) 

SOCCC-OCDF  string  buffer— short  NEW 

SOCEO  String—"*"  for  buffer  channel 

$0CE1-0CE2  String— "10"  to  initialize 

S0F04-0F0F  String  buffer— Block  Read  (Ul) 

SOFIO-OFIB  String— Block  Write  (U2) 

$0FF3  256-byte  data  buffer  starts  here 


First  the  program  maps  the 
source  disk's  BAM  on  the  screen  to 
record  which  sectors  contain  data. 
Then  it  copies  each  used  sector  in 
turn,  reading  it  from  the  source  disk 
and  writing  it  to  the  archive  disk. 
Note  that  to  read  a  disk  sector,  you 


should  always  use  the  Ul  direct 
access  command  rather  than  B-R 
(Block  Read).  Likewise,  the  U2 
command  must  be  used  in  place  of 
B-W  (Block  Write).  Despite  what 
your  user's  guide  says,  the  B-R  and 
B-W  commands  are  defective  and 
should  never  be  used. 

Archive:  Two-Drive  Boclcup 

Please  refer  to  the  "MLX"  article  in  ttiis  Issue 
before  entering  the  foltowing  listing. 


49152 
49158 
49164 
49170 
49176 
49182 
49188 
49194 
49200 
49206 
49212 
49218 
49224 
49230 
49236 
49242 
49248 
49254 
49260 
49266 
49272 
49278 
49284 
49290 
49296 
49302 
49308 
49314 
49320 
49326 
49332 
49338 
49344 
49350 
49356 
49362 
49368 
49374 
49380 
49386 
49  392 
49398 
49404 
49410 
49416 
49422 
49428 
49434 
49440 
49446 
49452 
49458 
49464 
49470 
49476 
49482 
49488 
49494 
49500 
49506 
49512 
49518 
49S24 
49530 
49536 
49542 
4954B 
49554 
49560 
49566 
49572 
495  7B 
49584 


:027 

:04e, 

;020, 

:0e5, 

!069, 

il42, 

!232, 

il60, 

:124, 

;004, 

il79, 

!006, 

:008, 
:076, 
:012, 
!l33, 
:144, 
!013, 

:133, 
il44, 
il69, 
:004, 
:032, 
il95, 
:255, 
!032, 
:015, 

tiea, 

!l69, 
|192, 
t255, 
t240, 
!2ai, 
:2S5, 
:032, 
1032, 
:015, 

ti6e, 

:169, 
il92, 
1255, 
i240, 
!201, 
!255, 
!032, 
!l69, 
:12a, 

siea, 

!015, 

:255, 

!032, 
:162, 
■  001, 
1 189, 
1015, 
il89, 
:232, 
:204, 
:255, 
Jl57, 
:032, 
(148, 
:076, 
:195, 
J255, 
:030, 
!255, 
1032, 
1208, 
1255, 
1030, 
!l69, 
:133, 


003,000, 
055,055, 
020,020, 
082,067, 
000,000, 
033,208, 
142,134, 
015,032, 
133,176, 
133,177, 
165,197, 
201,003, 
169,009, 
121,008, 
032,030, 
002,032, 
048,021, 
032,030, 
002,032, 
048,003, 
003,032, 
032,195, 
195,255, 
255,169, 
169,015, 
204,255, 
032,030, 
162,008, 
000,032, 
255,162, 
032,207, 
014,201, 
065,144, 
076,182, 
195,255, 
231,255, 
032,030, 
162,009, 
000,032, 
255,162, 
032,207, 
014,201, 
065,144, 
076,242, 
195,255, 
013,032, 
108,000, 
013,032, 
168,162, 
169,000, 
192,255, 
008,032, 
162,224, 
255,032, 
032,201, 
192,012, 
224,013, 
255,162, 
162,000, 
243,015, 
204,255, 
012,165, 
121,008, 
255,169, 
169,123, 
171,169, 
162,144, 
210,255, 
245,169, 
169,146, 
171,160, 
004,133, 
251,165, 


000,158 
058,143 
020,020 
072,073 
000,162 
142,032 
002,169 
030, 171 
133,178 
169,216 
201,004 
208,246 
032,210 
169,227 
171,169 
067,012 
169,008 
171,169 
067,012 
076,025 
195,255 
255,169 
169,006 
013,032 
032,195 
169,206 
171,169 
032,186 
189,255 
015,032 
255,201 
032,240 
241,032 
008,169 
032,204 
169,224 
171,169 
032,186 
189,255 
015,032 
255,201 
032,240 
241,032 
008,169 
032,204 
210,255 
003,169 
030,171 
008,03  2 
032,189 
169,013 
186,255 
160,012 
192,255 
255,162 
032,210 
208,245 
013,032 
032,207 
232,208 
162,015 
167,240 
169,013 
015,032 
160,013 
018,032 
189,243 
232,224 
013,032 
160,013 
000,132 
165,165 
177,133 


,050,243 
,034,143 
,032,144 
,086,207 
,015,014 
,208,027 
,028,231 
,169,107 
,169,193 
,133,118 
,240,022 
,240,202 
,255,243 
,160,071 
,008,250 
,165,245 
,160,134 
,009,014 
,165,007 
,009,163 
,169,175 
,005,018 
,032,053 
,195,229 
,255,041 
,160,152 
,015,076 
,255,205 
,032,077 
,198,004 
,013,119 
,004,149 
,210,061 
,015,135 
,255,153 
,160,001 
,015,136 
,255,010 
,032,137 
,198,064 
,013,179 
,004,209 
,210,121 
,015,255 
,255,213 
,162,087 
,087,003 
,169,089 
,186,091 
,255,170 
,168,105 
,169,094 
,032,135 
,162.123 
,000,221 
,255,196 
,032,010 
,198,182 
,255,235 
,247,176 
,032,036 
,003,077 
,032,023 
,195,215 
,032,112 
,210,252 
,015,124 
,164,239 
,210,005 
,032,165 
,006,151 
,176,214 
,252,007 


66     COMPUTE!      August  1986 


49590  1165,178,133,003,165,179,237 

49596  1133,004,032,165,012,162,184 
49602  t  008 , 169 , 001 , 1 33 , 005 , 165 , 163 
49608  !  166, 037, 005, 240, 006, 169,055 
49614  ! 046 , 145 , 251 , 208 , 004 , 169 , 005 
49620  1081,145,251,032,093,012,058 
49626  : 202, 208, 234, 032, 165, 012, 047 
4963  2  ! 162, 008, 169, 001, 133,005,190 
49638  1165,166,037,005,240,006,081 
49644  !  169, 046, 145, 251, 208, 004, 035 
49650  1169,081,145, 2 51, 032, 093, 245 
49656  !012, 202, 208, 234, 032, 16 5, 077 
49662  : 012, 162, 005, 169, 001, 133, 224 
49668  !005, 16 5, 166, 037, 005, 240, 110 
49674  1006,169,046,145,251,208,067 
49680  !004,169,0ei,14S, 251,03  2, 186 
49686  : 093, 012, 202, 208, 234, 230, 23 3 
49692  :165, 230, 176, 230, 178, 230, 213 
49698  1 006 , 165 , 006 , 201 , 035 , 176 , 111 
49704  :a02, 144, 13 1,169, 056, 160, 190 
49710  ! 014, 032, 030, 171, 160, 144, 085 
49716  :  162, 000, 185, 243, 01 5, 157, 046 
49722  : 207, 012, 232, 200, 224, 016, 181 
49728  :  208, 244, 032, 204, 255, 169, 152 
49734  1015,168, 162,009,032,186,130 
49740  1255,169,000,032,189,2  55,208 
49746  1032,192,255,162,015,032,002 
49752  1201,255,162,000,189,204,075 
49758  1012,032,210,255,232,224,035 
49764  !019, 208, 245, 032, 204, 255, 039 
49770  1162,015,032,148,012,165,128 
49776  1167,240,003,076,121,008,215 
49782  1169,015,032,195,255,032,048 
49788  : 204, 2 55, 169, 003, 162, 008, 157 
49794  1160,015,032,186,255,169,179 
49800  1000,032,189,255,032,192,068 
49806  1255,169,005, 162,009,160,134 
49812  1015,03  2,186,2  55,169,000,037 
49818  1032,189,255,032,192,235,085 
49824  1169,004,168,162,008,03  2,191 
49830  1 186 , 255 , 169 , 001 , 162 , 2  24 , 139 
49836  1160,012,032,189,255,032,084 
49842  1192,255,169,006,168,162,106 
49848  1009, 032, 186, 2 55, 169, 001, 068 
49854  1162,224,160,012,032,189,201 
49860  1255,032,192,255,160,000,066 
49866  1132,006,169,004,133, 165,043 
49872  1169,001,13  3,249,16  9,124,029 
49878  1133,176,169,004,133,177,238 
49884  1169,000,133,250,16  5,17  6,089 
49390  1133,251,165,177,133,2  52,057 
49896  1162,016,177,251,201,081,096 
49902  1208,017,165,197,201,004,006 
49908  1208,002,240,091,032,148,19  7 
49914  1011,165,167,240,002,208,019 
49920  1082,032,126,012,202,208,150 
49926  1227,165,249,201,018,144,242 
49932  1014,201,025,144,014,201,099 
49938  1031,144,014,201,036,144,076 
49944  1014,240,056,162,005,208,197 
49950  1 010 , 162 , 003 , 208 , 006 , 162 , 069 
49956  1002,208,002,162,001,177,076 
49962  1251,201,081,208,017,165,197 
49968  1197,201,004,208,002,240,132 
49974  1028,032,148,011,165,167,093 
499B0  1240,002,208,019,032,126,17  5 
49986  1012,202,208,227,230, 176,097 
49992  1230,249,16  5,249,201,036,17  8 
49998  1240,003,076,221,010,169,029 
50004  1004,032,195,2  5  5,16  9,006,233 
50010  1 032 , 1 95 , 255 , 169 , 003 , 032 , 008 
50016  1195,255,169,005,032,195,17  9 
50022  1255,032,204,255,165,167,156 
50028  1208,031,169,008,133,002,147 
50034  I  032 ,067 , 012 , 169 , 009 ,133, 024 
50040  1002,032,067,012,169,044,190 
50046  1160,013,032,030,171,165,185 
50052  1197,201,005,240,007,201,215 
50058  1 004, 208 , 246 ,076 , 121 , 008, 033 
50064  1076,029,003,152,072,138,107 
50070  1072,165,249,032,175,012,087 
50076  1165,169,141,011,015,141,030 
50082  1 023 , 015 , 141 , 149 , 007 , 165 , 150 
50088  1 170  ,  141 ,01 2  ,  01  5  ,  141 ,  024  ,  159 
50094  1015,141,150,007,165,250,134 
50100  1032,17  5,012,165,169,141,106 
50106  1014, 015, 141, 026, 015, 141, 026 
50112  1189,007,165,170,141,015,111 
50118  1015, 141, 027, 015, 141, 190, 215 


50124  1007,032,254,237,162,003,131 

50130  1032, 201 , 255 , 162 , 000 ,  189  ,  025 

50136  1004,015,032,210,25  5,232,196 

50142  1224,012,208,245,032,254,173 

50148  1237,162,004,032,198,255,092 

50154  1162,000,032,173,241,157,231 

50160  1243,015,232,208,247,032,193 

50166  1254,237,162,003,032,148,058 

5017  2  1012,16  5,167,240,003,076,147 

50178  1059,012,032,254,237,162,246 

50184  1006,032,201,255,162,001,153 

50190  1 189 , 243 ,015 , 032, 221 , 237 , 183 

50196  1232,208,247,189,243,015,130 

50202  1 032 , 221 , 237 , 032 , 254 , 237 , 015 

50208  1162,005,032,201,2  55,162,081 

502 14  1 000 , 189 , 016 , 015 , 032 , 210 , 244 

502  20  1255,232,224, 012, 208, 245, 196 

50226  1 032 , 204 , 2  55 , 162 , 005 , 032 , 228 

50232  1148,012,032,204,255,104,043 

50238  1170,104,168,096,169,015,016 

50244  1 168 , 166 ,002 , 032 , 186 , 2 55 , 109 

50250  1 169 , 002 , 162 , 225 , 160 , 012 ,036 

502  56  1032,189,255,032,192,2  55,011 

50262  « 169, 015 , 032,1 95 , 255 , 096 ,080 

50268  il69 ,000 , 145 , 003 , 024 , 165 , 086 

50274  1251,105,040,133,251,165,019 

50280  1252,105,000,133,252,024,102 

50286  ! 165 , 003 , 105 , 040 , 133 , 003 , 047 

5029  2  1165,004,105,000,133,004,015 

50298  1006,005,096,177,251,009,154 

50304  1128,145,251,230,250,024,132 

50310  1165,2  51,105,040,133,251,055 

50316  1165,252,105,000,133,2  52,02  3 

50322  1096,169,000,133,167,032,231 

50328  1198,255,032,207,255,201,020 

50334  1050,144,002,230,167,096,079 

50340  1230,165,166,165,189,243,042 

50346  1015,133, 166 , 096 , 162 , 048 , 022 

50352  1056,233,010,144,003,232,086 

50358  1176,249,105,058,134,169,049 

50364  1133,170,096,085,049,058,011 

50370  1049 , 051 , 032 , 048 , 032 , 049 , 1 99 

5037  6  1056,032,048,078,048,058,008 

50382  1 032 , 032 , 032 , 032 , 032 , 032 , 142 

503B8  1032,032,032,03  2,032,032,148 

50394  1032,032,032,032,032,035,157 

50400  1073,048,013,013,032,032,179 

50406  1201,078,073,084,073,065,036 

50412  1076,073,090,073,078,071,185 

50418  1032,083,079,085,082,067,158 

50424  1069,032,068,073,083,075,136 

50430  1032,068,082,073,086,069,152 

50436  1046,013,000,013,032,032,140 

50442  1201,078,073,084,073,065,07  2 

50448  1076,073,090,073,078,071,221 

50454  1 032 , 068, 069 , 083 , 084 ,073,175 

50460  1078,065,084,073,079,078,2  29 

50466  1032,068,082,073,086,069,188 

50472  1046,013,000,147,080,082,152 

50478  1069,083,083,032,070,051,178 

50484  1032,084,079,032,067,079,169 

50490  1080,089,032,065,078,079,225 

50496  1084,072,069,082,044,032,191 

50502  1070,049,032,084,079,032,160 

50508  1081,085,073,084,046,046,23  5 

50514  1046,009,146,000,013,032,072 

50520  1032,210,069,065,068,073,093 

50526  1078,071,032,194,193,205,099 

505  3  2  1044,032,070,079,082,077,2  28 

50538  1065,084,084,073,078,071,049 

50544  103  2,065,082,067,072,073,247 

50550  1 086 , 069 , 046 , 000 , 147 , 1 42 , 096 

50556  1008,213,195,195,195,201,107 

50562  1084,082,065,067,075,213,204 

50568  1195,195,195,195,195,195,026 

50574  1 1 95 , 195 , 000 , 221 , 032 , 032 , 049 

50580  1032,032,03  2,032,032,03  2,084 

50586  1032,032,032,032,049,032,107 

50592  1032,032,032,032,032,032,096 

50598  1032,032,050,032,032,032,120 

50604  103  2,032,032,03  2,032,032,108 

50610  1051,032,032,032,032,032,133 

50616  1013,221,032,032,032,049,051 

50622  1050,051,052,053,054,055,249 

50628  1056,057,048,049,050,0  51,251 

50634  1 052 , 053 , 054 , 055 , 056 , 057 , 017 

50640  1048,049,050,051,052,0  53,255 

50646  1 054 , 055 , 056 , 057 , 048 , 049 ,021 

50652  1050,051,052,053,013,202,129 


50658 

50664 
50670 
50676 
50682 
50688 
50694 
50700 
50706 
50712 
50718 
50724 
50730 
50736 
50742 
50748 
50754 
50760 
50766 
50772 
50778 
50784 
50790 
50796 
50802 
50808 
50814 
50820 
50826 
50832 
50838 
50844 
50850 
50856 
50862 
50868 
50874 
50880 
50886 
50892 
50898 
50904 
50910 
50916 
50922 
50928 
50934 
50940 
50946 
50952 
50958 
50964 
50970 
50976 
50982 
50938 
50994 
51000 
51006 
51012 
51018 
51024 
51030 
51036 
51042 
51048 
51054 
51060 
51066 
51072 
51078 
51084 
51090 
51096 
51102 
S110B 
51114 
51120 
51126 
51132 
51138 
51144 
51150 
51156 
51162 
51168 
51174 
51180 


1032,032,048,013,083 
032,049,013,069,032 
050,013,067,032,032 
013,084,032,032,052 
079,032,032,053,013 
032,032,054,013,213 
032,055,013,221,032 
056,013,221,032,032 
013,221,032,049,048 
221,032,049,049,013 
032,049,050,013,221 
049,051,013,221,032 
052,013,221,032,049 
013,221,032,049,054 
000,221,032,049,055 
029,029,029,029,029 
029,029,029,029,029 
029,029,029,029,029 
029,029,029,029,029 
029,029,029,029,029 
195,195,195,195,013 
032,049,056,029,029 
029,029,029,029,029 
029,029,029,029,029 
029,029,029,029,029 
029,029,029,213,195 
195,195,195,203,032 
032,032,013,221,032 
057,029,029,029,029 
029,029,029,029,029 
029,029,029,029,029 
213,195,195,195,195 
195,203,032,032,084 
065,067,075,032,048 
013,221,032,050,048 
029,029,029,029,029 
029,029,029,029,029 
029,029,029,029,221 
065,082,067,072,073 
069,146,032,083,069 
084,079,082,032,048 
013,202,195,195,195 
195,195,195,195,195 
195,195,195,195,195 
195,195,195,195,203 
080,072,073,076,032 
069,076,083,079,078 
032,049,057,056,053 
000,085,049,058,052 
048,032,048,049,032 
048 , 085 , 050 , 058 , 054 
048,032,048,049,032 
048,147,008,014,032 
018,042,032,193,210 
200,201,214,197,032 
042,032,212,087,079 
196,082,073,086,069 
195,079,080,073,069 
032,042,013,013,032 
208,085,084,032,083 
085,082,067,069,032 
073,083,073,032,073 
032,068,082,073,086 
032,069,073,071,072 
044,013,032,032,070 
082,077,065,084,084 
068,032,068,073,083 
032,073,078,032,068 
073,086,069,032,078 
078,069,046,013,013 
032,208,082,069,083 
032,018,070,055,146 
070,085,078,067,084 
079,078,032,075,069 
032,084,079,032,066 
071,073,078,044,013 
032,018,070,049,146 
075,069,089,032,084 
032,065,066,079,082 
032,078,079,087,032 
082,032,076,065,084 
032 , 046 , 046 , 046 , 000 
018,083,079,085,082 
069,032,068,082,073 
069,032,013,013,000 
013,018,065,082,067 
073,086,069,032,068 
073,086,069,013,013 


,032 

,210 

,032 

,203 

,051 

,227 

,013 

,214 

,082 

,029 

,032 

,120 

,032 

,135 

,057 

167 

,013 

138 

,221 

097 

,032 

171 

,049 

195 

,053 

206 

,013 

174 

,029 

184 

,029 

234 

,029 

240 

,029 

246 

,029 

2S2 

,213 

186 

,221 

,080 

,029 

,064 

,029 

,020 

,029 

,026 

,029 

,032 

,195 

,042 

,032 

210 

,049 

,255 

,029 

084 

,029 

,062 

,029 

,068 

,195 

,064 

,082 

,022 

,049 

,248 

,029 

,055 

,029 

,098 

,029 

,104 

,018 

,035 

,086 

,131 

,067 

,158 

,048 

,071 

,195 

,187 

,195 

,112 

,195 

,118 

,018 

,211 

,078 

,139 

,032 

,151 

,019 

,006 

,032 

,022 

,048 

,009 

,032 

,085 

,048 

,021 

,032 

,051 

,195 

,210 

,042 

156 

,032 

,016 

,032 

,076 

,082 

122 

,032 

226 

,079 

127 

.068 

221 

,078 

238 

,069 

240 

,084 

237 

,079 

112 

,069 

053 

,075 

253 

,082 

225 

,073 

021 

,032 

123 

,083 

179 

,032 

237 

,073 

091 

,089 

062 

,069 

008 

,032 

219 

,032 

005 

,079 

092 

,084 

078 

,079 

063 

,069 

090 

,147 

055 

,067, 

108 

,086, 

110 

.013, 

102 

,072, 

029 

,082, 

128 

,000, 

234 

August  1985  COMPUTEI  67 


Atari  Color  Mixing 


This  informative  tutorial  demon- 
strates the  principles  of  color  mixing 
on  Atari  400/800,  XL,  and  XE 
computers. 


Advertisements  for  home  comput- 
ers often  tout  the  number  of  differ- 
ent colors  that  a  particular  machine 
can  produce.  But  little  is  said  about 
how  these  colors  are  generated  on 
your  TV  or  monitor  screen.  Know- 
ing some  theory  behind  these  tech- 
niques can  help  you  produce  more 
colorful  graphics  displays. 

Atari  computers  manufactured 
after  early  1982  can  generate  256 
color  variations,  based  on  16  differ- 
ent hues  which  each  can  have  16 
luminances  (brightnesses),  Ataris 
made  before  early  1982  can  display 
only  8  luminances  per  hue  for  a 
total  of  128  colors,  but  can  be  up- 
graded by  replacing  the  CTIA  chip 
with  a  GTIA  chip.  Atari  colors  are 
represented  by  a  number  from 
0-255  using  this  formula:  color 
number  =  hue  number  *  16  +  lumi- 
nance number. 

The  "Atari  Color  Mixing"  pro- 
gram listed  below  demonstrates  ad- 
ditive color  mixing  and  lets  you  try 
your  hand  at  subtractive  color  mix- 
ing as  well.  We'll  explain  these 
terms  in  detail  in  a  moment.  For 
now,  enter  and  save  Color  Mixing, 
then  run-  it.  The  program  is  quite 
simple  and  contains  all  the  instruc- 
tions you  need.  Just  follow  the 
prompts  and  refer  to  the  rest  of  this 
article  for  additional  information. 

The  colors  may  look  better  if 
you  adjust  your  TV's  brightness 
control  somewhat  higher  than  usu- 
al. The  exact  hues  may  also  vary 
depending  on  the  tint  setting.  Ad- 
just the  tint  for  good  green  and  red. 


Karl  E.  Wiegers 


and  the  other  colors  should  be  pret- 
ty close. 

Additive  Color  Mixing 

As  every  child  discovers  when 
painting  with  watercolors,  the  three 
primary  colors — red,  green,  and 
blue — can  be  added  together  in 
various  combinations  to  make 
many  different  colors.  Thus,  red, 
green,  and  blue  are  known  as  the 
additive  primary  colors. 

When  primary  colors  are  com- 
bined, new  colors  appear.  White 
light  is  a  balanced  combination  of 
red,  green,  and  blue  light.  Equal 
intensities  of  blue  and  green  light 
produce  a  greenish-blue  color 
called  cyan.  Red  and  blue  light  mix 
to  create  magenta,  a  reddish-purple. 
And,  believe  it  or  not,  mixing  red 
and  green  light  together  produces 
yellow.  Many  more  colors  can  be 
produced  if  the  primaries  are  of  dif- 
ferent intensities.  For  instance, 
combining  a  given  intensity  of 
green  with  twice  that  intensity  of 
red  is  equivalent  to  yellow  plus  red, 
or  orange. 

Additive  color  mixing  works 
with  pigments  as  well  as  lights. 
However,  pigment  mixing  often  re- 
sults in  different  colors  than  those 
described  above.  For  example,  mix- 
ing red  and  green  paints  usually 
produces  brown,  not  yellow. 

In  fact,  the  brown  color  really 
IS  a  yellow.  But  red  and  green  pig- 
ments usually  have  far  less  intensi- 
ty than  red  and  green  lights. 
Besides  having  a  particular  hue 
(light  frequency),  a  color  can  have 
different  levels  of  luminance  (inten- 
sity). The  effect  we  usually  call  color 
is  actually  the  combined  effects  of 
hue  and  luminance.  Because  red 
and  green  pigments  are  quite  dark 


(have  little  luminance),  mixing 
them  together  produces  the  dark 
yellow  we  commonly  call  brown, 
A  color  TV  or  monitor  creates 
different  colors  by  the  additive  pro- 
cess using  colored  light  sources. 
The  screens  of  color  TV  tubes  con- 
tain thousands  of  tiny  red,  green, 
and  blue  dots  (phosphors)  which 
glow  when  struck  by  electrons  from 
a  gun  at  the  back  of  the  tube.  If  you 
examine  a  color  screen  with  a  mag- 
nifying glass,  you'll  see  individual 
red,  green,  and  blue  phosphors.  At 
normal  viewing  distances  the  col- 
ored dots  merge  together  and  create 
additive  colors.  For  instance,  adja- 
cent red  and  blue  dots  look  like 
magenta.  When  no  phosphors  are 
lit,  the  result  is  black. 

Subtractive  Color  Mixing 

Recall  that  if  red  and  blue  lights  are 
combined,  the  resulting  color  is  ma- 
genta. There's  also  another  way  to 
produce  magenta — you  can  shine 
white  light  through  a  magenta- 
colored  filter.  White  light  contains 
all  the  primary  colors,  but  the  filter 
absorbs  the  green  light,  allowing 
only  the  red  and  blue  light  to  pass. 
In  other  words,  a  magenta  filter 
subtracts  or  blocks  out  green  light.  If 
you  place  a  green  filter  and  a  ma- 
genta filter  in  front  of  a  white  light 
source,  all  light  should  be  blocked 
out:  The  green  filter  blocks  red  and 
blue,  and  the  magenta  filter  blocks 
green.  The  final  result  is  black.  For 
this  reason,  green  and  magenta  are 
termed  complementary  colors  (ma- 
genta is  also  sometimes  called  mi- 
nus green). 

Similar  logic  applies  to  the  oth- 
er primary  colors:  A  cyan  (blue  + 
green)  filter  subtracts  red  light,  and 
a  yellow  (red  +  green)  filter  sub- 


6S     COMPUTEI     August  1965 


tracts  blue  light.  Red  and  cyan  (mi- 
nus red)  are  complementary,  as  are 
blue  and  yellow  (minus  blue). 

Cyan,  magenta,  and  yellow  are 
called  subtractive  primary  colors. 
Just  like  the  additive  primaries  (red, 
green,  blue),  the  subtractive  prima- 
ries can  be  mixed  into  virtually  any 
combination  of  hue  and  luminance. 
But  the  process  is  reversed.  Addi- 
tive color  mixing  works  by  sending 
specific  colors  to  your  eye,  while 
the  subtractive  process  removes  spe- 
cific colors  from  a  color-rich  light 
source,  leaving  only  complemen- 
tary colors.  Most  color  photograph- 
ic systems  are  subtractive,  using 
cyan,  magenta,  and  yellow  film 
dyes. 

Color  Mixing  uses  color  num- 
bers which — on  my  system — come 
closest  to  producing  the  six  additive 
and  subtractive  primary  colors  (see 
lines  270-280).  Of  course,  colors 
can  vary  greatly  from  one  TV  or 
monitor  to  the  next.  Cyan  is  a  little 
difficult  to  display;  my  choice  for 
cyan  would  look  a  bit  greener,  but 
my  computer  won't  cooperate.  The 
blue  is  also  darker  than  you  might 
expect,  but  blue  in  a  color  mixing 
sense  is  actually  quite  dark. 

Additional  Techniques 

Note  that  each  display  screen  in 
Color  Mixing  uses  several  different 
Atari  graphics  modes.  The  heading 
is  displayed  in  graphics  mode  1, 
other  text  is  in  mode  0,  and  the 
color  squares  are  drawn  in  mode  3. 
Mixed-mode  screens  like  this  are 
created  by  modifying  the  comput- 
er's display  list,  a  set  of  instructions 
which  tells  the  computer  how  to 
put  data  on  the  screen.  The  Color 
Mixing  program  modifies  display 
lists  in  lines  210,  1010-1020, 
1210-1240,  and  4010-4020.  (You 
can  read  more  about  modifying  dis- 
play lists  in  COMPUTEI's  First  Book 
of  Atari  and  COMPUTEI's  First  Book 
of  Atari  Graphics.) 

Atari  computers  can  ordinarily 
display  up  to  five  colors  at  a  time. 
But  some  of  the  screens  in  Color 
Mixing  show  nine  colors.  This  is 
accomplished  with  a  display  list  in- 
terrupt (DLI).  A  DLI  is  a  short  ma- 
chine language  routine  that,  among 
other  things,  can  change  the  con- 
tents of  color  registers  while  the 
computer  is  displaying  each  video 
frame.  This  technique  lets  you  cre- 


ate graphics  with  extra  colors  on 
various  parts  of  the  screen.  (For 
more  information,  consult  De  Re 
Atari,  published  by  Atari,  Inc.) 

The  program's  colored  boxes 
are  drawn  in  graphics  mode  3  using 
character  strings  for  graphics  stor- 
age (lines  310-320).  Here  is  the  text 
equivalent  of  this  display: 

AAAAA  CCCCC  BBBBB 

AAAAA  CCCCC  BBBBB 

AAAAA  CCCCC  BBBBB 

AAAAA  CCCCC  BBBBB 

When  the  computer  displays  a 
string  in  a  nontext  graphics  mode 
with  the  PRINT#6  statement,  the 
letters  A,  B,  and  C  show  up  as 
different-colored  pixels.  The  letter 
A  appears  as  a  pixel  with  the  color 
taken  from  color  register  0;  the  let- 
ter B  uses  color  register  1;  and  the 
letter  C  uses  register  2.  A  SET- 
COLOR  or  POKE  statement  which 
changes  the  value  in  color  register 
0,  for  example,  would  change  the 
color  of  the  A  box.  This  technique  is 
used  in  lines  4170  and  4210-4220. 
Line  4270  erases  the  boxes  by  set- 
ting all  their  colors  to  black.  As 
Color  Mixing  demonstrates,  it's  far 
more  convenient  to  store  these 
graphics  in  strings  than  to  use 
PLOT,  DRAWTO,  or  XIO  fill 
statements. 

Atari  Color  Mixing 

Please  refer  to  "COMPUTEI's  Guide  to  Typing 
In  Programs"  before  entering  this  listing. 


AJ  10 
KH  15 

IE  25 

F6  3a 
HE  40 

FH  S0 

LI  ba 

it  70 
CS  00 

nt  90 

IE  100 
W  110 

PK  120 
OA  130 

U   140 


DIM  A* 

Di«  <&0 

S(6, 6) 

DIM  RE 

BLUE«( 

NTA« ( 1 

CKf ( 1 ) 

A«-"AA 

C»-"CC 

BL« (1 ) 

)-BL«: 

GRAPH  I 

DMENT. 

FOR  1"= 

1«( I , I 

I Dl«  (3 

DATA  7 

162, IB 

,23,20 

DATA  1 

141,0, 

DATA  1 

Dl« (3S 

• (37,3 

D2«=D1 

« (121 } 

ST-AD 

DIS  (4 

1«<53 

ST«ST 

Dl*  <  1 

1C(23 

ST-AD 


(S) , B*(S) ,C«<5) , 
) , D2« ( 180) ,KOLOR 
, BL« (3S} 

D»(l ) , SREEN»(1) , 
1 ) ,CYAN« ( 1 ) , MAGE 
) , YELLDW»(1) ,BLA 

AAA"iB«>°"BBBBB'*: 

CCC" 

=CHR« (32) iBL«(35 

BL*(2) -BL« 

CS  0i  ?  !  7  "ONE  M 


1  TO  3 

)  >c:hr« 

1 ) »D1* 
2,138, 
0, 141, 
B 

42,24, 
2, 169, 
04, 170 
, 35)=C 
7) -CHR 
•: D2« ( 
-Dl» 
R (Dl«) 
S,4S)- 
,53)-C 
+30: GD 

s,  ie>== 

,23)=C 
R(D2«> 


0! READ 
( A) iNE 

72, 169 
10,212 

208, 16 
0, 141, 
, 104,6 

:HR«  (10 
C  (0) 
61 ) -Dl 

tSOSUB 
CHR» (L 
HR* (HI 
SUB  40 
CHR* (L 
HR»  CHI 
: GOSUB 


A:  D 

XT  I 

,66, 
,  141 

9,0, 
1,2 

4 

)  I  Dl 

f:  D2 

400 
D)  :  D 
) 

0 

D)  :D 
) 

400 


LN  150 

D2«(16a, 168) -CHR* (LQ) 

lD2*(173, 173) -CHR* (HI 

) 

FOR  1-18  TO  138  STEP 

El  160 

30 

Pf  170 

ST-ST-t-301  BOSUB  400 

C?  180 

D2*  (1,1 )-CHR»(LO)  1 D2* 

(1+5, I+5)-CHR*eHI ) 

CC  190 

NEXT  I 

HI  200 

D2« ( 132, 132) -CHR* (22) 

HF210 

DL-PEEK (540) +256«PEEK 

(561  ) 

LB  220 

RESTORE  240JFOR  I-l  T 

0  iiFDR  J=l  TO  6 

BJ  230 

READ  AtKOLORS ( I , J)-Ai 

NEXT  J. NEXT  I 

IIC240 

DATA  66,26,86,4,82,40 

,26, 1B0, 116. 164,4,200 

HE  250 

DATA  86,116,146,150,1 

02,4,4, 164, 150,116, 14 

6,  180 

m  260 

DATA  B2, 4, 102, 146, B6, 

6  6,40, 200,4, 1B0, 66, 26 

Dt  270 

RED*=CHR* (66) ! GREENS= 

CHR* (180) :BLUe»=CHR*< 

146) 

BD  2B0 

CYAN*  =  CHR* (116)  !  MAGEN 

TA»-CHR* (86) : YELLDH«= 

CHR* (26) ! BLACK«=CHR« ( 

0) 

JS  290 

GOTO  2000 

HP  300 

POKE  B7,3:6DSUB  500 

KB  310 

FOR  1=0  TO  SiPDSITlDN 

5, I:?  «6jA«!P0SITIDN 

16,1:?  #6; C« 

DC  320 

POSITION  31,1:?  i6;B« 

iNEXT  I:RETURN 

PL  350 

POKE  B7,0;GD5UB  500:B 

ETURN 

GJ  400 

HI  =  iNT  (ST/256)  :LD=>ST- 

256*HI;RETURN 

JI1500 

HMEM=256tHMEM+LMEM+BY 

TE 

EI  510 

LMEM=HMEM-256*INT (HHE 

M/256) 

a  520 

HMEM=INT(HMEM/2  56) 

W  530 

POKE  Ba,LMEM:POKE  39, 

HMEMs RETURN 

H6  600 

OPEN  #1,4,0, "K: " : GET 

#1,AjCL0SE  #1:RETURN 

Ft  1000  POKE  559,0:POKE  752, 

1 
NP  1010  POKE  DL  +  3,70:PQKE  DL 

+6,134:PDKE  DL+14,13 

H  1020  FDR  1=7  TO  •13:P0KE  D 

L+I,S:NE)(T  I 

10  1030  ST  =  ADR(DI«)  sGOSUB  40 

0:POKE  512,LD:P0KE  5 

13, HI 

EJ  1040  LMEM  =  PEEK(BB)  !HMEM  =  P 

EeKCa9)iP0KE  710, 0!P 

OKE  542B6, 192SRETURN 

HI  1200 
U  1210 
BS  1220 

nt  1230 

HH  1240 
ED  1250 

EN  1260 


PO 

1 

FO 

:P 

DA 

.2 

DA 

,B 

PD 

ST 

01 

13 

LM 

EE 

OK 


KE  5 
REST 
R  1  = 
OKE 
TA  1 
,  130 
TA  1 
,  136 
KE  D 

ADR 
POKE 

HI 
EM  =  P 
K  (89 
E    54 


i59,0:POKE     752, 

•ORE     1220 

:6     TO     24sREAD     A 

DL+I,A!NEXT  I 
134, B, B,B, 136,2 

9,  e,  B,  8 

36, 2, 2, 130, 8,8 


L+3, 70 

(D2«) : GOSUB  40 
512,LOiP0KE  5 

EEKOB)  !HMEM  =  P 
) ! POKE  710, 0:P 
2B6, 192: RETURN 


2000  GRAPHICS  0:GOSUB  100 
0;POKE  708,146:PDKE 
71 1 , 40 


_J 


August  1965     COMPUTEI     69 


KQ  2010 

Dlt {5,5>=GREEN«sDl»( 

DH  2680 

IF  A=27  THEN  2000 

AGENTA   +   YELLOW 

7,7)=REDSiPDKE  559,3 

NJ  2690 

GOTO  2670 

<4  SPACES>= 

4 

W   3000 

GRAPHICS  0!GDSUB  100 

<5  BPACEBJRED" 

DJ  2020 

POKE  B7, 1 : BYTE=0!GOS 

0!POKE  70S,26!PDKE  7 

IC  3660 

POSITION  5,38?  "Id^AL 

UB  500 

1  1  ,  40 

[m  TD  SO  ON,  |=i.-Tt-  TO 

BA  2030 

POSITION  6,  0!  ?  #6i  "E" 

IL3010 

Dl» (5, S)=MAGENTA*!D1 

REVIEW" ; 

^4  ^%  r^  1  I  VH.    t    ^m  j^          "w   r^         f*          *    ^^  ^^    ^r 

rr «»i'i^" :  ?  #6;  •■ 

* (7, 7 ) =CYANS > POKE  55 

LL  367  0 

GOSUB  600: IF  A=155  T 

(3  SPACES>lrJ*1„MJJM*.. 

OK  3020 

9,34 

POKE  87, l!BYTE=0!BOS 

HEN  4000 

V  ^"    r^         ^^  ^    ^  1  ■  ^*  b  1    ^r  >v  rfv  >v 

lW.1,lMi" 

BJ  36B0 

IF  A=27  THEN  3000 

CB2040 

PDKE  87, 3! BYTE-40iGO 

UB  500 

NL  3690 

GOTO  3670 

BF  2050 

SUB  500 

FOR  1=2  TO  5:P0SITID 

PC  3030 

POSITION  5, 05?  #65  "E 

nft  4000 

GRAPHICS  0: GOSUB  100 
0 

Lll^^iM^+ty--;"  :  ?  #6;  '■ 

N  5,1;?  #6; ft*! POSITI 

{3  SPACES  J  raJlitlji-'MjE 

PF  4010 

FOR  1=6  TD  BiPOKE  DL 

ON  17,1;?  #6; BS: PDBI 

n^uEdU" 

+I,6:NEXT  I s POKE  0L+ 

TION  30, Is?  #6;C«: NE 

CC  3040 

POKE  a7,3!BYTE  =  40!  GD 

9,  134 

XT  I 

SUB  500 

HP  4020 

FOR  1=10  TD  14!PDKE 

CE  20^0 

POKE  B7, 0! BYTE=e0:GO 

KB  3050 

FDR  1=2  TO  5SPDSITID 

DL+I,  8:  NF.KT  I  !  POKE  D 

SUB  500 

N  5,  I  I?  #6; A»: PDSITI 

L+15, 136 

Aft  2070 

POSITION  5,0!?  "BLUE 

DN  17, I:Z  «6;B*:P0SI 

IS  4030 

POKE  71 1,401  POKE  708 

fS  SPfiCES>GREEN 

TION  30, I:?  #6;C«:NE 

,0 

{9  SPflCESJRED" 

XT  I 

IC  4040 

Dl«<5, 5; -BLACK*  ;  Dl*( 

HB  2080 

POSITION  2,4 

CF  3060 

POKE  S7, 0t BYTE=a0:GO 

7,7)  =BLr-.c;<* 

LD  2090 

?  "These  ar»  the  liUK 

SUB  500 

CQ  4050 

POKE  559,34 

S***Jl:m-J^HZ\:^:V,":y     "co 

]fl3070 

POSITION  4,0:?  "YELL 

OP  4060 

POKE  87, 1 : BYTE=0:GDS 

lors.  The  eye  sees  t 

0Wt6  SPACES>MAGENTA 

UB  500 

he  cDmblnation" 

{8  SPACES>CYAN" 

PD  4070 

POSITION  2,1:?  #6; "E 

61  2100 

?  "o-f  blue,  green,  a 
nd  red  as  white.";? 

E30B0 
IK  3090 

POSITION  2,4 

7  "These  are  the  i-^il-- 

UitlAjtA'Ji*  J:».«r:l:iV"  :  V 

riiTifi  ^^^-TJh■n'^^^-tl-^j" :  po 

SI  TION  3,2:7  #6;"::H5 

"Pairs  of  these  prim 

aries  are" 

"colors.  A  yellow  -f  i 

HO  40B0 

BYTE=100: GOSUB  300:8 

Kl  21  10 

?  "perceived  as  new 

L!  3100 

lt«r  subtracts" 

?  "the  blue  companen 

HH  4090 

YTE"=60i  GOSUB  350 
POSITION  12,0:?  #6; " 

colors,  the"!?  "•^■i>*i 

rTT?r»**i'J=«d:*«i:l:V.  colo 

t  out  of  white"!?  "1 

+"!P0BITION  24,0!?  tt 

rs.  " 

ight,  only  passing  t 

6!  "  =  " 

BK2120 

POSITION  5,13:7  "I:];*! 

he  red  and" 

BJ  4100 

POSITION  9, 4i?  #6; "1 

nrnr  to  go  on,  r^^r^  td 

EC  3  1  1 0 

?  "green  components. 

-REDC7  SPACESJ4-CYAN 

QUIT"; 

Yallow  and  blue"!? 

>' 

LE  2130 

GOSUB  600! IF  fl=155  T 

"are  thus  called  rar 

FF  4  1  1  0 

POSITION  9,5:?  #6;  "2 

HEN  2500 

l=IJ*=<=l=i.'b*:l;l.-«rf.lB.!:,.1.  " 

-GREENES  SPACES>5-MA 

PO  2140 

IF  ft=27  THEN  GRAPHIC 

KK  3  120 

PUSITIUN  5,  13:7  "Ifl^i 

GENTA" 

S  0:END 

m;J:  TO  BO  ON,  lri=ttj  lU 

OP  4120 

POSITION  9,6:7  #6; "3 

NH  2150 

GOTO  2130 

REVIEW"; 

-BLUEt6  BPACES>6-YEL 

CE  2S00 

GRftPHICS  0:GOSUB  120 

Le3  130 

GOSUB  600; IF  A=155  T 

LOW" 

0!POKE  70B,l46sPOKE 

HEN  3500 

KC  4140 

POSITION  2,9:?  #6; "E 

71 1 , 40 

DE  3  140 

IF  fl=27  THEN  2500 

NTER  A  COLOR  NUMBER! 

FH  2530 

D2« (5, 5)=MfiGENTft«t D2 

tIJ  3150 

GOTO  3130 

r 

»!7,7)=RED*:D2«<65;6 

CE3500 

GRAPHICS  0!GQSUB  120 

5 ) =CYAN» 

0:POKE  708, 116:PQKE 

KJ  414S 

GOSUB  600:Cl=A-4e 

EL  2540 

D2«(67,67)=GREEN*:D2 

71  1 , 40 

31   4150 

IF  CKl  OR  Cl>6  THEN 

« ( 125, 125)=REDt 

OL  3530 

D2» (5, S>-BLUE*!D2* (7 

?  CHR* (253)  i  sGOTD  4 

Ft  2550 

D2* (9  5, 95)  =YELLOWt!  D 

, 7)=MAGENTA«iD2«<65, 

145 

2«(127, 127)=GREENt 

65)-GREEN« 

EJ  4  170 

?  «6(CliPDKE  709, KOL 

DC  2560 

POKE  559,34 

Hi   3540 

D2» (67,67) - YELLOW* iD 

0RS(C1 , CI ) ; POSITION 

PB  2570 

POKE  87, 1 : BYTE=0; 60S 

2*(125, 125>=MAGENTA« 

7, 0i  ?  i6;Cl 

UB  500 

LB  3550 

D2» (95, 95)= YELLOW* SD 

KG  4180 

POSITION  2,10s?  #65 " 

JK  2580 

POSITION  3,0:7  «6i "E 

2»< 127, 127)=RED* 

MIX  IT  WITH  COLOR  NU 

EE  2590 

Dl>3560 
PE  3570 

PDKE  559,34 

POKE  87, l!BYTE=0!GDS 

KD  41S5 

MBER :  " ; 

GOSUB  600:C2=A-4S 

BYTE=40) GOSUB  300SGO 

SUB  350 

POSITION  S,  1 ! 7  #6;  "B 

UB  500 

KB  4190 

IF  C2< 1  OR  C2>6  THEN 

tt  2600 

HL  3580 

POSITION  1,0:?  1*65  "E 

?  CHR* (253) ; : GOTO  4 
JS5 

LUEC3  SPfiCES>+ 

m  iy  ^  j^T-fc  4Vi-m  it»:-h  rtr " 

f4  SPACESJRED 

EF  3590 

BYTE=40: BDSUB  300:GO 

JD  4210 

?  #6;C2!D1« (7,7) =CHR 

b  ^T      kJ  J    rt   h^  ^  1-*  rf   1  ■  ^"  *^ 

C5    SPACES}^ 

SUB  350 

* (K0L0RS(C2, C2) ) !POS 

{4  SPflCES>MftGENTA" 

NJ  3600 

POSITION  5, Is?  »6j "C 

I TION  18,0!?  #6jC2 

HL  26  10 

BYTE=120!GOSUB  300:B 

YAN(3  SPACESJ+   MAGE 

BH  4220 

D1*(5,5)=CHR* (KQLORS 

EO  2620 

YTE=40!ODSUB  350 
POSITION  5, i ! ?  #6; "B 

NTA<4  SPACEB>= 
t4  SPACESJBLUE" 

(K  4230 

(CI, C2 ) > 
POSITION  6, 12:?  tt6t " 

LUEC3  SPACESJ+ 

flK  3610 

BYTE=120:GOSUB  300:B 

i:(=*1'J:(;  TO  DO  MORE,  d 

<:3  SPACES>GREEN 

YTE=40| GOSUB  350 

SG  TD  QUIT" 

<4  SPACESJ= 

it  3620 

POSITION  S,  l!?  #6;  "C 

LB  4240 

GOSUB  600: IF  A=155  T 

{5    SPACES>CYAN" 

YAN{3  SPACES>+ 

HEN  4270 

HN  2630 

BYTE=120;6OSUB  300!B 

t3  SPACES>YELLOW 

K   4250 

IF  A=27  THEN  GRAPHIC 

LF  2640 

YTE=40; GOSUB  350 
POSITION  6,1s?  #65 "R 

<4  SPACES>= 

(4  SPACES>BREEN" 

HP  4260 
OL  4270 

S  0! END 

GOTO  4240 

POKE  70S,0! Dl* (5, 5)= 

EDtS  SPACES>+ 
iZ     SPACEBJSREEN 

«B  3630 

POKE  87, 3; BYTE=120:G 
OSUB  500:FDR  1=0  TO 

BLACK*: Dl* (7, 7)=BLAC 

K* 

POSITION  7,0: ?  #6; " 

{4  SPACES>= 

3 

DH  42B0 

It  2660 

{5  SPACESJYELLDW" 

BN  3634 

POSITION  5,1:?  #6;  A* 
iPOSITION  16, I:?  #6; 

":POSITION  18,0!?  tt6 

POSITION  5,3!?   "cnaii 

rrr   to  bo  on,  1=4^^  lu 

B*iPOSITION  31,1:?  « 

IE  4300 

FOR  I»9  TO  12!P0SITI 

REVIEW" J 

6;C*!NEXT  I 

DN  2, Is?  #6tBL*jNEXT 
IiGOTO  4140        ^ 

LJ  2670 

GOSUB  600: IF  A=155  T 

PL  3638 

BYTE=40!GOSUB  350 

HEN  3000 

EA  3640 

POSITION  4,1:?  »6;  "M 

70     COMPUTEI     August  1 985 


Mousor: 

Escape  Mode  Cursor 
For  The  Apple  Ho 


J,  Bloke  Lambert,  Assistant  Editor 
Tim  Victor,  Editorial  Progrommer 


This  short,  fast  utility  makes  it  simple 
to  use  your  Apple  Uc  mouse  controller 
for  editing  iji  BASIC  or  the  machiiie 
language  monitor  in  escape  mode. 


Despite  all  the  improvements  Ap- 
ple incorporated  into  the  lie,  the 
screen  editing  features  when  using 
BASIC  or  the  machine  language 
monitor  are  not  much  better  than 
those  available  on  the  lie.  Without 
an  editing  support  package,  it  is 
difficult  to  copy  and  correct  pro- 
gram lines.  And  there  is  no  way  to 
use  the  mouse  controller  to  make 
editing  easier. 

In  BASIC,  usually  you  end  up 
making  corrections  by  just  typing 
the  incorrect  line  all  over  again. 
This  wastes  time  and  effort.  The 
alternative  is  to  use  what  Is  called 
escape  mode  editing. 

"Mousor"  makes  using  escape 
mode  easy.  By  rolling  the  mouse 
over  an  area  of  the  desk  smaller 
than  a  3  X  5-inch  index  card,  you 
can  cursor  (mousor)  anywhere  on 
the  screen. 

How  To  Use  Mousor 

To  start  mousing  around  with  Mou- 
sor, type  in  and  save  the  program 
below.  It's  a  BASIC  loader  which 
creates  the  Mousor  machine  lan- 
guage routine  in  memory.  (Note: 
Save  the  BASIC  loader  on  disk 
before  running  it  for  the  first  time.) 
When  you  run  Mousor,  it  automati- 
cally checks  to  see  if  you're  using 
DOS  3.3  or  ProDOS  and  then  ad- 
justs itself  accordingly.  When  the 
BASIC  prompt  reappears,  you'll 
have  a  mouse-driven  escape  mode 
cursor.  If  you  don't  understand  es- 
cape mode  editing,  see  the  instruc- 
tions below. 


The  mouse  is  trained  to  work 
like  this: 

1.  Click  the  mouse  button  to  acti- 
vate escape  mode. 

2.  While  holding  the  button  down, 
roll  the  mouse  across  the  desk  to 
move  the  escape  mode  cursor. 

3.  Release  the  mouse  button  to  exit 
escape  mode. 

Mousor  locks  out  keypresses 
while  it  is  in  escape  mode,  so  if  you 
want  to  use  the  escape  editing  func- 
tions (like  ESC-E  to  erase  the  end  of 
a  line),  press  the  ESC  key. 

Getting  A  Line  Of  BASIC 

When  you  type  a  line  of  BASIC  on 
the  Apple  lie,  a  routine  called 
GETLN  puts  the  characters  into  a 
special  area  of  memory  called  the 
input  buffer.  The  first  character  on 
the  line  is  stored  at  the  start  of  the 
input  buffer,  and  subsequent  char- 
acters are  added  to  the  end  of  the 
buffer.  This  continues  until  you 
press  the  RETURN  key  to  enter  the 
line  (with  a  few  important  excep- 
tions). The  computer  clears  the  rest 
of  the  current  screen  line  and  stores 
the  carriage  return  character  into 
the  input  buffer  to  mark  the  end  of 
the  line. 

When  you  make  a  mistake 
while  entering  the  line,  like  typing 
the  wrong  character,  it's  easy  to  fix. 
For  example,  if  you  are  entering  a 
line  such  as  10  PRINT  "HELLP" 
and  notice  you  pressed  P  instead  of 
O,  you  can  press  the  left-arrow  key 
(also  called  backspace)  to  back  up 
and  change  the  letter.  Instead  of 
storing  the  backspace  in  the  buffer 
like  other  keypresses,  GETLN 
treats  it  differently. 

GETLN  keeps  track  of  the 
length  of  the  input  buffer  by  point- 
ing to  the  end.  When  GETLN  re- 


ceives a  backspace  character,  it 
lowers  the  value  of  the  pointer  by 
one.  This  removes  the  last  character 
in  the  buffer,  so  all  you  need  to  do  is 
continue  typing. 

If  you  don't  notice  your  mis- 
take until  you've  typed  in  several 
more  characters,  you  can  use  the 
left-  and  right-arrow  keys  to  make 
the  correction.  Press  the  backspace 
key  until  the  cursor  is  on  the  letter 
you  want  to  change.  Type  the  cor- 
rect letter,  and  then  press  the  right- 
arrow  key  (also  called  retype)  until 
the  cursor  returns  to  the  end  of  the 
line. 

Each  time  you  press  the  retype 
key,  the  character  currently  under 
the  cursor  is  added  to  the  input 
buffer  and  the  cursor  is  moved  to 
the  right.  In  effect,  you  have  re- 
moved several  characters  from  the 
buffer,  changed  the  character  you 
wanted  to  correct,  and  retrieved  the 
rest  of  the  characters  one  by  one 
from  the  screen. 

Now  For  The  Triclcy  Stuff 

Unfortunately,  you  can't  always 
catch  your  typing  errors  before  you 
press  RETURN.  Often,  you  don't 
even  know  there's  a  problem  in  a 
line  until  you've  run  the  program. 
Since  the  retype  key  allows  you  to 
pick  up  characters  from  the  screen 
and  add  them  to  the  input  buffer,  it 
would  be  handy  if  you  could  copy 
most  of  the  bad  line  and  type  only 
the  characters  you  want  to  change. 
This  requires  a  way  to  move  the 
cursor  around  the  screen  without 
affecting  the  input  buffer. 

Pressing  the  ESC  key  puts  the 
lie  into  escape  mode.  In  this  mode, 
the  arrow  keys  move  the  cursor  but 
don't  change  the  input  buffer.  The 
lie  indicates  escape  mode  by  dis- 
playing a  different  cursor — an  in- 
verse plus  sign.  To  leave  escape 
mode,  press  ESC  again. 

Suppose  you  want  to  edit  the 
following  line  in  escape  mode: 
100  PRINT  "THIS  IS  A  TEDT" 

If  the  line  is  not  on  the  screen, 
you'll  need  to  LIST  100.  Press  ESC 
to  enter  escape  mode  and  move  the 
cursor  up  to  the  L  At  this  point,  the 
input  buffer  is  empty.  Press  ESC 
again  and  use  the  retype  key  to 
place  the  cursor  on  the  D.  This  en- 
ters all  but  the  last  three  characters 
into  the  input  buffer.  Now  type  the 


August  1985     COMPUTE!      71 


letter  S,  and  press  retype  twice,  fol- 
lowed by  RETURN.  If  you  like, 
LIST  100  to  verify  the  correction. 
To  edit  the  same  line  with 
Mousor,  you  would  LIST  the  line, 
click  the  mouse  button  and  drag  the 
cursor  to  the  1,  and  release  the 
mouse  button.  After  this,  follow  the 
same  editing  procedure. 

Mouse  Moves 

You  can  also  use  escape  mode  to 
grab  pieces  of  program  lines.  Mou- 
sor is  especially  adept  at  this,  since 
movement  is  so  easy  and  quick.  Just 
keep  in  mind  that  when  the  mouse 
button  is  down  no  characters  are 
added  to  the  buffer. 

To  copy  a  line,  first  LIST  it. 
Then  enter  the  number  for  the  new 
line  you  want  to  create,  click  the 
mouse  button  and  drag  the  escape 
mode  cursor  to  just  beyond  the 
original  line  number,  and  release 
the  button.  Copy  the  line  by  press- 
ing the  right-arrow  key  until  you 
reach  the  last  character,  and  then 
press  RETURN. 

Inserting  is  another  useful 
technique.  LIST  the  line  first,  then 


mousor  (click  and  drag  the  escape 
mode  cursor)  to  the  beginning  of 
the  line  number.  Release  the  mouse 
button  and  right-arrow  across  the 
line  until  you  reach  the  point  where 
you  want  to  insert  characters.  Press 
the  mouse  button  and  mousor  to  a 
blank  line  on  the  screen,  then  re- 
lease the  button  and  type  the  insert 
characters.  Click  and  drag  up  to  the 
listed  line  again,  release  the  button, 
and  right-arrow  to  the  end.  After 
making  any  changes,  don't  forget  to 
press  the  RETURN  key  to  enter 
them. 

Mousor  For  Apple  He 

Please  refer  to  "COMPUTEI's  Guide  to  Typing  In 
Programs"  before  entering  this  listing. 

DE  10  IF  PEEK  (191  *    256)  -  76  T 

HEN  SOSUB  40:  BOSUB  S0!  GQ 

TO  30 
AC  20  GOSUB  50:  GOSUB  40 
2E  30  FOR  1  =  11  TO  207:  READ  fl: 
POKE  I  +  7i8,Ai  NEXT  i  CA 

LL  768 I  END 
il   40  FOR  I  =  0  TO  10s  READ  A:  P 

OKE  I  +  768, Ai  NEXT  i  RETU 

RN 
13  50  FOR  I  =  0  TO  10!  READ  As  N 

EXT  1  RETURN 
E7  60  DATA  216,169,67,141,50,190 
4E  70  DATA  169,3,141,51,190 


IE  80  DATA 
7J  90  DATA 
F7  100  DATA 

2 

^^   110  DATA 

7C  120  DATA 
EA  130  DATA 
IF  140  DATA 
K  150  DATA 
K  160  DATA 

96 
EF  170  DATA 
;2  180  DATA 
U  190  DATA 
ii  200  DATA 
SS  210  DATA 
2B  220  DATA 
74  230  DATA 
FE  240  DATA 
FB  250  DATA 
M  260  DATA 

S0 
n   270  DATA 
M  280  DATA 
!C  290  DATA 

04 
E:  300  DATA 
»  310  DATA 
a  320  DATA 
41  330  DATA 
M  340  DATA 
IF  350  DATA 

9 
82  360  DATA 
19  370  DATA 
C7  3S0  DATA 
IF  390  DATA 
C9  400  DATA 
il  410  DATA 
IS  420  DATA 


169,67, 133,56, 169,3 
133,57,32,234,3 
120, 162, 196,160,64,3 

2S, 196, 169,0, 141, 120 
4,141, 120,5,141,248 
5,169,8, 141,248,4 
169,0, 162, 196, 160,64 
32, 176, 196, 169, 1, 162 

196.32. 176. 196. 162.1 

32,132, 196, 169,1, 162 
196, 160,64,32,61, 196 
88,96, 145,40,32,76 
204,44,99, 192, 16, B 
32, 112,204, 16,246,76 
37,253,218,90,72, 169 
4,141, 124,4,141,252 
4,32,187,3,32,195 
3,44,99, 192,16,9 

104.32. 179. 195. 122.2 

76,69,3, 173,124,4 
240,7,201,8,144,25 
162, 156,44, 162, 136, 1 

32,179,195, 138,32,88 
205, 32, 195, 3, 72, 169 
4,141, 124,4,32, 187 
3,173,252,4,240,7 
201,8, 144,25, 162, 138 
44, 162, 159, 104,32, 17 

195, 138, 32, BS, 205, 32 
195,3,72,169,4, 141 
252,4,32,187,3,76 
102, 3, 162, 196, 160, 64 
32, 107,196,96,32,29 
204,72,41,128,73, 171 
32,179,195,104,96  0 


Commodore  64  Headliner 


Create  attention-getting  headlines 
and  titles  with  this  oversized  alphabet 
for  the  Commodore  64. 


Nearly  every  program  uses  titles  or 
headlines  of  some  sort,  and  you 
ordinarily  want  titles  to  look  as  im- 
pressive as  possible.  But  the  stan- 
dard Commodore  character  set 
doesn't  permit  much  variety.  You 
can  use  different  character  colors  or 
print  in  reverse  video,  but  the  let- 
ters are  still  pretty  small.  "Commo- 
dore 64  Headliner"  lets  you  create 
truly  striking  titles  and  headlines 
with  an  alphabet  that's  four  times 
bigger  than  normal. 

Enter  and  save  Headliner  from 
the  listing  below,  then  run  it.  After 
a  short  pause  to  form  the  new  char- 


Robert  F  Lambiose 

acters,  the  program  prints  the  al- 
phabet in  giant,  quadruple-size 
characters.  The  letters  can  be  any 
color,  and  the  standard-size  alpha- 
bet is  available,  too.  The  only  thing 
you  give  up  are  reverse  video  char- 
acters, since  Headliner  redefines 
them  as  large  characters. 

Using  Headliner 

Headliner  is  easy  to  incorporate  in 
your  own  programs.  The  first  step  is 
to  include  lines  100-350  (they  can 
be  renumbered,  of  course)  to  create 
the  new  character  set,  The  program 
begins  storing  the  new  character 
definitions  at  memory  location 
12288.  The  statement  POKE 
53272,29  (see  line  240)  tells  the 
computer  to  look  at  this  memory 
area  for  character  definition  data. 
Use  POKE  53272,21  to  switch  back 


to  normal  characters. 

After  defining  the  new  charac- 
ters, Headliner  prints  the  expanded 
alphabet  (lines  400-405)  and  a  title 
(lines  410-430).  Whenever  a  string 
of  large  characters  is  to  be  printed, 
the  characters  are  defined  as  a 
string  (X$).  Then  two  important 
variables  (SL  and  CC)  are  defined. 
Finally,  the  statement  GOSUB  500 
calls  the  subroutine  that  puts  the 
big  characters  on  the  screen.  The 
subroutine  analyzes  each  character 
in  X$;  if  it  is  not  a  space  character, 
its  pattern  is  POKEd  into  screen 
memory. 

The  variable  SL  sets  the  posi- 
tion of  the  large  characters  on  your 
screen.  The  64's  screen  is  divided 
into  25  rows  and  40  columns,  giv- 
ing a  total  of  1,000  different  loca- 


72     COMPUTEI      August  1985 


tions.  Each  screen  memory  location 
has  a  different  address,  and  they 
are  numbered  in  order,  beginning 
at  the  upper-left  corner  of  the 
screen.  The  upper-left  screen  posi- 
tion is  location  1024;  the  next  loca- 
tion to  the  right  is  1025,  and  so  on. 
Color  memory  is  a  second  1,000- 
byte  memory  area  that  corresponds 
to  screen  memory.  By  POKEing  the 
right  number  into  color  memory, 
you  can  control  the  color  of  any 
screen  memory  location.  Your  Com- 
modore 64  User's  Guide  has  maps 
that  show  the  numbers  for  every 
screen  memory  and  color  memory 
location,  as  well  as  a  list  of  all  the 
color  numbers. 

To  place  large  characters  on 
the  screen,  find  the  location  you 
want  using  the  screen  memory  map 
in  your  user's  guide,  then  set  SL  to 
that  value.  The  upper-left  corner  of 
the  first  large  character  appears  at 
the  location  defined  by  SL,  and  the 
others  follow  in  order.  For  example, 
to  start  printing  large  characters  at 
the  upper-left  corner  of  the  screen, 
use  the  statement  SL=1024. 


EADLINER 

ABCDEFGHIJKLM 
HOPQRSTUUWXVZ 


Note  that  the  title  above  the 
alphabet  uses  a  large  character  to 
begin  a  line  of  standard  characters, 
somewhat  like  a  super-capital  let- 
ter. Line  420  of  the  program  sets  the 
computer  to  start  printing  again  at 
the  next  location  after  the  last  ex- 
panded character. 

Pick  Your  Colors 

The  variable  CC  sets  the  color  of 
the  large  characters  using  the  color 
numbers  listed  in  your  user's  guide. 
Line  410  of  Headliner  uses  the 
statement  CC  =  3  to  print  in  cyan. 
Use  the  statement  CC=  1  to  print  in 
white,  and  so  on. 

There  may  be  times  when  you 
want  to  print  large  characters  in  the 
current  character  color.  Line  400  of 
Headliner  does  this  with  the  state- 


ment CC  =  PEEK(646).  Location 
646  always  contains  the  current 
color  number  for  PRINTing 
characters. 

The  64  actually  has  two  alter- 
nate character  sets:  One  is  used  in 
uppercase/graphics  mode,  and  the 
other  is  used  in  lowercase/upper- 
case mode.  You  can  switch  from 
one  mode  to  another  by  pressing 
SHIFT-COMMODORE.  Since  Head- 
liner  works  only  in  uppercase/ 
graphics  mode,  you  should  disable 
the  SHIFT-COMMODORE  key 
combination  to  prevent  the  user 
from  accidentally  destroying  the 
display.  To  do  this,  insert  PRINT 
CHR$(8)  at  the  beginning  of  your 
program.  When  the  program  ends, 
type  PRINT  CHR$(9)  to  restore 
things  to  normal. 

Building  Giant  Characters 

Each  large  character  is  actually  four 
redefined  characters  placed  togeth- 
er. (To  see  this  more  clearly,  type 
POKE  53272,21  and  press  RE- 
TURN after  the  program  has  run.) 
The  standard  Commodore  64  char- 
acter set  contains  256  characters, 
numbered  from  0-255.  Characters 
0-127  are  the  "normal"  characters 
and  characters  128-255  are  the 
same  characters  in  reverse  video. 
Since  each  character  definition 
takes  eight  bytes,  a  full  set  of  char- 
acter definitions  requires  2,048 
(8*256)  bytes. 

The  first  step  in  redefining 
characters  is  to  copy  the  standard 
character  set  from  ROM  (Read  Only 
Memory)  into  RAM  (Random  Ac- 
cess Memory)  where  it  can  be  al- 
tered. The  program  does  this  in 
lines  200-240.  The  new  character 
set  begins  at  location  12288.  Since 
we  only  want  characters  0-127 
from  the  standard  set,  only  those 
character  definitions  are  copied. 

Next  the  program  POKEs  the 
expanded  character  definitions  into 
the  memory  area  that  would  other- 
wise store  reverse  video  character 
data  (see  lines  300-350).  The  bit 
pattern  of  each  standard  character 
is  mapped  into  a  four-character- 
sized  memory  area,  using  conver- 
sion values  stored  in  the  T()  array. 

Since  each  large  character  defi- 
nition takes  four  times  the  memory 
of  a  standard  definition,  we  have 
room  for  a  maximum  of  32  (128/4) 
expanded    definitions.    That's 


enough  for  26  letters,  but  not 
enough  space  to  hold  ten  numeral 
definitions,  too.  However,  you 
could  squeeze  in  six  more  charac- 
ters— perhaps  punctuation  or  other 
symbols. 

By  sacrificing  all  the  standard 
characters,  you  can  get  as  many  as 
64  large  characters — but  remember 
to  define  a  space  character  so  you 
can  still  clear  the  screen.  The  Com- 
modore 64  Programmer's  Reference 
Guide  contains  much  more  infor- 
mation about  using  redefined 
characters. 

Headliner 

please  refer  to  "COMPUTEI's  Guide  to  Typing 
in  Proorams"  before  entering  tfiis  listing, 

100  DIMT ( 15 ):POKE53281,0: POKES 
3280,0jPRINTCHR5(3) sG=5427 
2  : rem  24 

110  P0KE646,1 jFORJ=0TOi5:READT 
(J) :NEXT  srem  93 

120  DATA  0,3,12,15,48,51,60,63 
,192,195,204,207,240,243,2 
52,255  I  rem  220 

200  PRINTCHR5(147)TAB(125)"DOW 
NLOADING  THE  CHARACTER  SET 
":G=53248:GN=12288:rem  113 

220  POKE  56333, 127sP0KE1,51jF0 
R  Q=0TO1023iPOKEGN+Q,PEEK( 
G+Q) :NEXT  :rem  89 

240  POKEl,55!POKE56333,129:POK 
E53272,29  irem  196 

300  PRim'CHR5(147)TAB(12  5)"FOR 
MING  THE  LARGE  CHARACTERS" 
tPOKE133i2,0        :reni  15 

320  FORR=0TO212STEP8: 81=12288+ 
R!B2=13312+4*R      irem  19 

330  FORI=0TO4STEP4:FORK=0TO3iJ 
=PEEK ( Bl+K+I ) jN=B2+2* ( K+I ) 
+  1  :reni  233 

340  X1=T( (JAND240)/16) :X2=T(JA 
HD15)  srem  197 

350  POKEN,XlsPOKEN+l,Xl:POKElI+ 
16 , X2 : POKEN+17 , X2 : NEXTK, I , 
R  :rem  72 

360  PRINTCHR?(147}      : rem  20 

400  XS="ABCDEFGKIJKLH":SI,=1270 
!CC=-PEEK(646)  sGOSUB  500 

:rem  110 

405  X$="NOPQRSTUVWXYZ":SL=1350 
.•CC=PEEKC646)  :GOSUB500 

;rein  27 

410  X$="H":SL=1158:CC=3:GOSUB 
[SPACE  J  500  srem  62 

420  NS=SL+40:POKE210,INT{NS/25 
6) tPOKEZ09TSS  AHD  255 

trem  179 

430  P0KE646,7!PRINT"EADLINER": 
FORJ=1TO10:PRINT: NEXT: END 
I  rem  70 

500  FORP=lTOLEN(X5)lL=(ASC(HID 
9 ( X$ , P , 1 ) ) -641 *4+128 : IFL=0 
THEN550  srem  111 

530  P0KESL+G,CC!P0KESL+1+G,CC« 
POKESL+40+G ,CC : P0KESL+41+G 
,CC  ;rem  137 

540  P0KESL,L:P0KESL+1,L+2:P0KE 
SL+40,L+1 tPOKESL+41 ,L+3 

I  rem  241 

550  SL=SL+2iNEXT: RETURN  trem  5 


August  1985     COM)>UTGI      73 


Using  The  Commodore 
USR  Function 


The  USR  function  provides  a  conven- 
ient way  for  BASIC  programs  to  call 
machine  language  subroutines — and 
it's  more  versatile  than  the  SYS  state- 
ment. Although  this  article  is  oriented 
toward  the  Commodore  64,  the  gener- 
al principles  apply  to  all  Commodore 
computers.  A  demonstration  program 
shows  how  to  add  five  new  functions 
to  Commodore  64  BASIC. 


It's  often  overlooked,  but  the  USR 

function  is  a  powerful  and  conven- 
ient tool  for  accessing  machine  lan- 
guage (ML)  routines  from  BASIC. 
In  its  simplest  form,  USR  works  just 
like  the  more  familiar  SYS  com- 
mand, SYS  makes  the  computer 
halt  BASIC  program  execution  and 
jump  to  an  ML  routine  at  a  specified 
address.  When  the  ML  routine  is 
done,  BASIC  resumes  what  it  was 
doing.  SYS  lets  you  jump  anywhere 
in  the  computer's  memory,  to  a  sys- 
tem routine  stored  in  Read  Only 
Memory  (ROM)  or  a  user-written 
ML  program  stored  in  free  memory. 

To  see  an  example  on  the 
Commodore  64,  move  the  cursor  to 
a  blank  line  somewhere  near  the 
middle  of  the  screen,  type  SYS 
59626,  and  press  RETURN.  SYS 
59626  jumps  to  the  computer's 
ROM  scrolling  routine:  The  screen 
scrolls  up  and  the  blinking  cursor 
reappears. 

Although  USR  requires  a  little 
preparation,  it's  much  easier  to  use 
after  the  preparation  is  done.  Let's 
call  the  same  scrolling  routine  with 
USR.  Type  the  following  line  in 
direct  mode  (without  a  line  num- 
ber) and  press  RETURN. 

POKE  785,234;  POKE  786,232: 
A  =  USR(0) 

The  screen  scrolls  upward,  just 
as   it   did   when   you   typed   SYS 


Keith  R.  Bergerstock 


59626.  The  POKEs  set  up  the  rou- 
tine's address  for  USR.  This  method 
looks  cumbersome,  but  the  POKEs 
are  needed  only  once.  Afterward 
you  can  call  the  scrolling  routine 
whenever  you  like,  just  by  entering 
A=USR(0).  Program  1  below  con- 
tains a  formula  that  automatically 
performs  the  correct  POKEs  to  pre- 
pare any  address  for  USR. 

Like  PEEK  and  other  BASIC 
functions,  USR  must  be  followed 
by  a  value  in  parentheses.  How- 
ever, in  the  simplest  case  (when 
you  just  want  to  jump  to  an  ML 
routine),  the  value  and  the  preced- 
ing variable  name  are  both  irrele- 
vant: You  get  the  same  result  with 
A=U5R(XYZ)  or  GG  =  USR(123456 
78).  You  can  even  use  PRINT 
USR(X),  though  that  usually  prints 
something  on  the  screen. 

Parameter  Passing 

The  real  value  of  USR  lies  in  its 
ability  to  pass  parameters  (values) 
back  and  forth  between  BASIC  and 
machine  language.  To  see  how  this 
works,  type  in  and  save  Programs  1 
and  2  below.  Then  run  Program  1; 
it  puts  a  short,  multipurpose  ML 
program  in  memory  and  sets  up  the 
USR  address  vector  (a  pair  of  memo- 
ry locations  that  point  to  the  ML 
routine). 

The  variable  SA  in  line  10  de- 
fines the  starting  address  of  the  ML 
routine.  This  ML  program  is  re- 
locatable, so  you  can  put  it  else- 
where if  you  like.  For  instance,  to 
put  the  routine  at  49152,  change 
line  10  so  that  SA=49152  and  re- 
run Program  1, 

The  rest  of  line  10  converts  the 
address  into  low  byte /high  byte  for- 
mat for  the  USR  vector.  Since  255  is 
the  largest  number  any  single 
memory    location    can    hold,    the 


computer  must  use  two  adjacent 
locations  to  store  addresses  like 
59626.  Program  1  stores  the  high 
byte  of  the  address  in  the  variable 
HI%  and  the  low  byte  in  LO. 

Line  20  POKEs  LO  and  HI% 
into  vector  locations  785  and  786. 
You  must  always  put  the  target  ad- 
dress in  these  locations  before  using 
USR.  The  rest  of  Program  1  POKEs 
the  ML  into  the  computer's  memo- 
ry. To  use  this  technique  in  your 
own  programs,  just  duplicate  the 
method  shown  in  Program  1. 

If  you  get  an  ?ILLEGAL 
QUANTITY  error  message  when 
experimenting  with  USR,  it  proba- 
bly means  that  you  forgot  to  put  a 
vector  address  in  785-786.  When 
you  turn  the  computer  on,  the  vec- 
tor in  785-786  points  to  45640,  the 
BASIC  routine  that  prints  that 
message. 

USR  works  virtually  the  same 
on  all  Commodore  computers;  the 
only  difference  is  the  location  of  the 
USR  vector.  You'll  find  it  at  loca- 
tions 1-2  on  the  VIC-20  and 
812-813  on  the  Commodore 
Plus/4  and  16.  The  other  vectors 
mentioned  below  also  are  located 
in  different  places  on  various 
machines. 

Using  USR 

Program  1  provides  five  handy 
functions  which  you  select  by  in- 
serting a  number  from  0-4  in  the 
parentheses  after  USR.  For  an  illus- 
tration, plug  a  joystick  in  port  2, 
then  load  and  run  Program  2  after 
running  Program  1  to  install  the 
ML.  As  you  move  the  joystick,  the 
program  prints  the  joystick  direc- 
tions on  the  screen.  To  exit  the  pro- 
gram, press  the  fire  button. 

Line  50  of  Program  2  does  the 
important  work.   The  statement 


74     COMPUTEI      August  1985 


JV  =  U5R(3)  calls  the  ML  routine 
and  selects  function  3  (read  joy- 
stick). Each  time  the  ML  routine 
performs  this  function,  it  gives  the 
variable  JV  a  numeric  value  repre- 
senting the  joystick  position.  JV  is  0 
when  the  joystick  is  centered,  9 
when  the  fire  button  is  pressed,  and 
so  on. 

Note  that  Program  2  passes 
information  in  both  directions.  The 
value  in  parentheses — USR(3) — 
sends  information  to  the  ML  rou- 
tine (telling  it  to  perform  function 
3).  And  the  ML  routine  passes  other 
information  back  in  the  form  of  a 
variable  (JV). 

The  other  four  functions  work 
in  similar  fashion.  Function  4  re- 
turns the  size  of  the  BASIC  program 
currently  in  memory.  Whenever 
you  want  to  know  your  program 
size,  use  the  statements  A=USR(4): 
PRINT  A.  Function  2  changes  the 
screen  background  and  border  col- 
ors. To  activate  this  function,  use 
A  =  USR(C*256  +  2),  replacing  C 
with  the  number  of  the  screen  color 
you  want  (your  6i  User's  Guide  lists 
the  color  numbers). 

Function  1  reads  the  Y  and  N 
keys,  returning  the  value  of  1  when 
Y  is  pressed,  and  2  when  N  is 
pressed.  The  ML  routine  waits  until 
you  press  Y  or  N,  ignoring  all  other 
keys.  This  function  is  useful  in  the 
common  case  where  a  program  asks 
the  user  a  Yes/No  question.  Com- 
bining USR  with  ON-GOTO  or  ON- 
GOSUB  is  a  very  efficient  technique. 
For  instance,,  type  in  and  run  the 
following  program  (make  sure  the 
ML  routine  is  in  memory): 

10  PRINT"ENTER  Y/N";ON  USR(l) 

GOSUB  100,200 
20  GOTO  10 

100  PRINT"YES":RETURN 
200  PRINT"NO";RETURN 

Function  0  is  sinular  to  Function 
1,  but  reads  the  eight  special  function 
keys.  Enter  and  run  this  program  to 
see  how  it  works: 

10  A  =  USR<0) 

20  PRINT  A:  GOTO  10 

In  this  case  USR  returns  a  num- 
ber from  1-8  in  the  variable  A.  (But 
note  that  the  numbers  returned  don't 
correspond  directly  to  the  function 
key  numbers.  Keys  fl,  f3,  f5,  and  f7 
return  values  1-4  respectively,  while 
the  shifted  keys,  f2,  f4,  f6,  and  f8, 
return  values  5-8.)  In  your  own  pro- 


grams, of  course,  you  can  use  any 
variable  name  you  like;  this  function 
could  also  be  used  with  ON-GOTO 
or  ON-GOSUB  to  select  as  many  as 
eight  different  options. 

The  Facts  About  FAC1 

If  you  simply  want  to  use  the  new 
functions  provided  by  Program  1, 
you  needn't  read  any  further.  If 
you're  ready  to  write  your  own  ML 
routines  for  USR,  here  are  a  few 
additional  tips.  First,  when  you 
pass  a  value  from  BASIC,  the  value 
is  converted  into  a  different  number 
format  (floating  point)  and  placed 
in  the  computer's  floating  point  ac- 
cumulator (locations  98-101). 

The  floating  point  accumula- 
tor— usually  called  FACl  to  distin- 
guish it  from  the  secondary 
accumulator — is  a  special  number- 
processing  area  used  internally  for 
many  purposes.  Since  floating 
point  numbers  are  quite  difficult  to 
handle,  it's  helpful  to  convert  the 
floating  point  value  into  an  integer 
(whole  number)  before  using  it  in 
your  ML  routine.  Fortunately,  the 
64  has  built-in  routines  to  convert 
floating  point  numbers  to  integers 
and  vice  versa.  These  routines  can 
be  accessed  directly  with  JSR,  or 
indirectly  through  the  vectors  in  lo- 
cations 3-4  and  5-6. 

The  routine  at  location  45482 
($B1AA)  converts  a  floating  point 
number  in  FACl  to  an  integer.  Use 
this  routine  when  passing  a  value 
from  BASIC  to  ML.  At  the  point 
where  you  want  to  retrieve  the 
passed  value,  use  JSR  SBIAA  to  do 
the  conversion.  The  computer  re- 
turns the  low  byte  of  the  integer  in 
the  Y  register  and  the  high  byte  in 
the  A  register.  If  you'd  rather  use 
the  vector,  use  LDA  #$4C:  STA 
$02:  JSR  $0002. 

Passing  a  value  from  ML  back 
to  BASIC  often  requires  the  oppo- 
site conversion.  The  routine  at 
45969  ($B391)  converts  an  integer 
to  floating  point  format  and  stores 
the  result  iri  FACl.  At  the  point 
where  you  want  to  return  to  BASIC, 
load  the  low  byte  of  your  integer 
value  in  the  Y  register  and  the  high 
byte  in  A.  Then  call  the  integer-to- 
floating  point  conversion  routine 
with  JSR  $B391:  RTS  (you  can  also 
compress  these  two  instructions 
into  JMP  $B391).  The  value  is  con- 
verted and  stored  in  FACl,  and 


RTS  returns  you  to  BASIC.  If  you 
prefer  to  use  the  vector,  JMP 
($0005)  accomplishes  the  same 
thing. 

Like  other  vectors,  the  vectors 
at  3-4  and  5-6  will  presumably  be 
safe  to  use  even  if  the  actual  ROM 
addresses  of  the  routines  change 
after  a  ROM  update.  However, 
there's  one  danger  in  using  them. 
Since  BASIC  never  uses  locations 
2-6,  many  ML  programmers  use 
them  as  free  zero  page  space.  If 
your  routine  jumps  through  these 
vectors  after  some  other  ML  pro- 
gram overwrites  them,  it  may  send 
the  computer  into  never-never 
land. 

Program  1 :  USR  Loader  For 
Commodore  64 

10  SA=53088!HI%=SA/256:LO=SA-H 

I%*256  :rem  23 

20  POKE785,LO!POKE786,HI%:CK=0 

: rem  33 
30  READQ:IPQ>-1THENP0KESA,Q5SA 
=SA+1 sCK«CK+Q:GOTO30 

:rem  213 
40  IFCK=14435THENPRIKT"OK":NEW 

: rem  130 

50  PRINT  "ERROR  IN  DATA  STATEME 

NTS"  rrem  121 

60  DATA  169,0,133,198,169,76,1 
33,2,32,2,0,132,2   : rem  254 

61  DATA  192,0,240,19,192,1,240 
,35,192,2,240,50    rrem  197 

62  DATA  192,3,240,71,192,4,240 
,54,108,0,3,32,228   :rem  43 

63  DATA  255,201,133,144,249,20 
1,141.176,245,56    : rem  218 

64  DATA  2  33,132,168,169,0,108, 
5,0,32,228,255,201   :rem  51 

65  DATA  39,240,8,201,78,208,24 
5,160,2,208,236     :rem  177 

66  DATA  160,1,208,232,141,32,2 
08,141,33,208        .rem  54 

67  DATA  169,0,168,108,5,0,56,1 
65,45,229,43,168    :reni  235 

68  DATA  165,46,229,44,108,5,0, 
173,0,220,73,31     s rem  162 

69  DATA  41,31,168,201,3,144,12 
,136,201,8,144,7    :reni  204 

70  DATA  136,201,16,144,2,160,9 
,169,0,108,5,0,-1   :rem  236 

Program  2:  Joystick  Demo 
For  Commodore  64 

10  DATA  NONE, UP, DOWN, LEFT, UP/L 
EFT  :rem  98 

20  DATA  DOW8/LEFT, RIGHT, UP/RIG 
HT  :rem  54 

30  DATA  DOWN/RIGHT, FIRE  BUTTON 

rrem  144 

40  PRINTCHR$(147) tFORJ=0TO9:RE 
ADA5(J) :SP?=SP$+CHR5(32) :NE 
XT  srem  73 

50  JV=USR(3) :PRINTCHR5(19) JV,A 
S(JV)SP5  -.tern   44 

60    IFJV=9THENE=E+1  : rem   93 

70    IFE<20THEN50  srem   109 


August  1<?85    COMPUTE!     75 


Sound  And  Music 
On  The  Commodore  128 

Part  1 


Philip  I.  Nelson,  Assistant  Editor 


The  Commodore  128's  advanced 
BASIC  makes  if  easy  and  fun  to  create 
music  or  sound  effects.  Part  1  of  this 
two-part  series  shows  how  to  use  the 
VOL,  TEMPO,  and  ENVELOPE  state- 
ments. Part  2  explores  the  FILTER, 
SOUND,  and  PLAY  commands  and 
includes  three  short  tutorial 
programs. 


If  you've  heard  much  about  the 
new  Commodore  128,  you  proba- 
bly kr\ow  that  it  contains  a  very 
powerful  music  maker:  the  SID 
(Sound  Interface  Device)  chip,  ex- 
actly as  found  in  the  Commodore 
64  and  still  the  best  sound  chip  in 
any  personal  computer.  The  SID 
chip  provides  three  independent 
voices  (tone  generators)  for  playing 
up  to  three  notes  at  once,  and  four 
different  waveforms  to  simulate 
virtually  any  sound. 

Although  both  computers  use 
the  SID  chip,  the  comparison  ends 
there.  Since  Commodore  64  BASIC 
has  no  sound  commands,  even  sim- 
ple 64  sound  effects  require  several 
POKE  statements.  The  128's  BASIC 
eliminates  the  POKEs  by  adding  six 
new  music  and  sound  commands: 
PLAY,  SOUND,  VOL,  TEMPO, 
ENVELOPE,  and  FILTER. 

Simplicity  And  Power 

The  PLAY  command  is  both  pow- 
erful and  easy  to  use.  If  you  have 
access  to  a  128,  type  in  and  run  the 


following  one-line  program.   (The 
spaces  make  the  statement  more 
readable,  but  are  not  necessary.) 
100  PLAY  "C  D  E  F  G  F  E  D  C" 

The  128  plays  nine  notes,  go- 
ing up  the  scale  and  down  again.  It 
would  take  a  lot  more  work  to  play 
the  same  nine  notes  on  the  64 — 
you'd  need  at  least  three  prelimi- 
nary POKEs  (to  set  the  volume  and 
sound  envelope),  plus  four  POKEs 
for  each  note  (one  to  turn  on  the 
voice,  two  to  set  the  pitch,  and  one 
to  turn  off  the  voice). 

Interestingly,  you  can  control 
the  SID  chip  in  128  mode  with  the 
same  POKEs  as  on  the  64.  That's 
usually  a  waste  of  time,  since  the 
128's  BASIC  commands  are  more 
convenient  than  POKEs.  However, 
128  BASIC  has  certain  limitations 
(SOUND  statements  can't  use  ring 
modulation  or  synchronization,  for 
example).  If  you  already  know 
sound  programming  on  the  64,  you 
may  still  find  uses  for  old-fashioned 
64  programming  techniques. 

The  PLAY  command  is  so  ver- 
satile that  it's  almost  a  mini- 
language  in  itself.  In  addition  to 
playing  notes,  you  can  insert  rests, 
change  octaves,  choose  any  of  ten 
different  instrument  voices,  use  fil- 
tering, and  even  play  multivoice 
music.  This  month  we'll  stick  to 
simple  PLAY  statements  and  exam- 
ine the  VOL,  TEMPO,  and  ENVE- 
LOPE commands  in  detail.  In  Part 
2,  we'll  look  at  the  FILTER  and 
SOUND  commands  and  more  ad- 
vanced uses  of  PLAY. 


VOL  Means  Volume 

The  128's  VOL  command  affects  all 
three  voices  at  once  and  accepts 
values  from  0  (silence)  to  15  (maxi- 
mum). Add  the  following  line  to  the 
example  program  and  run  it  again: 
10  VOL  15 

Since  the  song  plays  at  the 
same  volume,  it  seems  VOL  had  no 
effect.  In  fact,  VOL  just  duplicated 
the  default  volume  setting  that 
PLAY  uses  when  no  volume  is 
specified.  When  you  turn  on  the 
128,  it  establishes  several  music 
and  sound  settings  (parameters)  in 
advance.  For  instance,  the  PLAY 
statement  above  plays  the  notes  at 
maximum  volume  with  a  sound  en- 
velope and  waveform  that  simulate 
a  piano.  Other  default  sound  pa- 
rameters, too,  remain  in  effect  until 
you  change  them. 

In  many  cases  you  can  set  the 
volume  at  the  beginning  of  a  pro- 
gram and  leave  it  alone.  However, 
gradual  changes  in  volume  can  add 
to  the  dynamics  of  a  song.  Since 
drastic  volume  changes  make  the 
SID  chip  "pop,"  don't  use  VOL  to 
turn  individual  notes  on  and  off. 
(To  hear  the  pop,  turn  up  the  vol- 
ume on  your  monitor  or  TV  set, 
enter  the  following  line  without  a 
line  number,  and  press  RETURN: 
VOL  15:VOL  0:VOL  15.) 

Unlike  PLAY  statements, 
SOUND  statements  (to  be  dis- 
cussed in  Part  2)  default  to  a  vol- 
ume of  0.  Before  using  SOUND  you 
must  always  use  VOL  to  set  the 
volume  to  some  nonzero  value. 


76     COMPUTEI      Augusi  19B5 


TEMPO 

TEMPO  is  another  command  that 
affects  all  voices  equally,  setting  the 
speed  at  which  a  song  plays.  TEM- 
PO is  followed  by  one  number  in 
the  range  0-255,  The  default  tempo 
setting  is  15,  a  pedestrian  speed. 
Add  the  following  line  to  the  ex- 
ample program  and  run  it  again: 
20  TEMPO  50 

At  a  tempo  of  50,  the  song 
plays  much  faster.  Try  several  dif- 
ferent TEMPO  values  in  line  20,  As 
you'll  find,  the  highest  tempos  are 
exceedingly  fast — too  speedy  for 
playing  whole  songs,  but  handy  for 
simulating  trills  and  grace  notes. 
Change  the  TEMPO  value  back  to 
15  when  you're  done  experiment- 
ing with  line  20. 

Don't  confuse  tempo — the 
overall  speed  of  the  music — with 
the  individual  duration  of  each  note 
(quarter  note,  sixteenth,  etc.).  In 
conventional  music  a  quarter  note 
lasts  one  "beat,"  an  eighth  note 
lasts  one-half  beat,  and  so  on.  Tem- 
po defines  how  many  beats  are 
played  in  a  minute.  At  faster  tem- 
pos every  note  plays  faster,  but 
quarter  notes  still  last  twice  as  long 
as  eighth  notes  The  default  note 
duration  for  PLAY  is  a  quarter  note. 

A  Built-in  Orchestra 

The  ENVELOPE  command  is  more 
versatile  than  VOL  or  TEMPO.  It  is 
used  to  create  customized  instru- 
ment sounds  for  your  songs.  ENVE- 
LOPE takes  the  following  general 
form: 

ENVELOPE  i,  a,  d,  s,  r,  w,  p 

In  the  above  example,  ;  stands 
for  the  instrument  number,  a  for  the 
attack  rate,  d  for  decay  rate,  s  for 
sustain  rate,  r  for  release  rate,  w  for 
waveform,  and  p  for  pulsewidth. 
Naturally,  in  a  program  these  let- 
ters are  replaced  with  appropriate 
numbers. 

The  first  number  in  an  ENVE- 
LOPE statement  chooses  one  of  the 
128's  instrument  voices.  There  are 
ten  predefined  instruments,  num- 
bered 0-9  as  shown  here: 


Instrument 

ENVELOPE 

Piano 

0 

Accordion 

1 

Calliope 

2 

Drum 

3 

Flute 

i 

Guitar 

5 

Harpsichord 

6 

Organ 

7 

Trumpet 

S 

Xylophone 

9 

Since  PLAY  commands  use  the 
same  instrument  numbers,  you'll 
want  to  become  familiar  with  this 
list.  To  pick  an  instrument  within 
PLAY,  add  a  T  (for  tune)  followed 
by  the  desired  instrument  number. 
For  instance,  PLAY  'T5  C  D  T3  E  F" 
selects  instrument  5  (guitar)  and 
plays  notes  C  and  D,  then  selects 
instrument  3  (drum)  and  plays 
notes  E  and  F,  The  same  numbering 
scheme  identifies  customized  in- 
struments, as  you'll  see  in  a  mo- 
ment. The  default  instrument  for 
PLAY  statements  is  instrument  0 
(piano);  if  you  don't  specify  an  in- 
strument, PLAY  always  produces  a 
piano  sound. 

Sound  Envelopes 

To  create  new  instrument  sounds, 
you'll  need  to  learn  about  sound 
envelopes  and  waveforms.  Every 
natural  sound  has  a  distinctive  en- 
velope or  sound  pattern.  Consider 
the  difference  between  a  snare 
drum  and  a  violin.  Drum  sounds 
begin  and  end  very  sharply.  The 
drumhead  starts  vibrating  the  in- 
stant you  strike  it,  and  fades  quick- 
ly. Violin  sounds  start  out  more 
softly,  as  the  string  gradually  picks 
up  vibrations  from  the  bow,  and 
fade  softly  as  the  vibration 
dissipates. 

The  128  defines  different 
sound  envelopes  in  terms  of  four 
values:  attack,  decay,  sustain,  and 
release  (ADSR).  The  attack  value 
defines  how  quickly  the  sound  rises 
from  silence  to  its  peak  volume. 
Decay  defines  how  quickly  the 
sound  fades  from  peak  volume  to 
the  volume  at  which  it  will  be  sus- 
tained (held).  Sustain  sets  the  vol- 
ume level  for  the  sound's  main 
duration.  Release  defines  how 
quickly  the  sound  fades  from  its 
sustained  volume  back  to  silence 
again.  Figure  1  illustrates  a  typical 
sound  envelope. 

In  ENVELOPE  statements,  the 
four  numbers  after  the  instrument 
number  define  the  ADSR  envelope. 
ADSR  numbers  can  range  from 
0-15. 

Waveforms 

ENVELOPE  also  lets  you  pick  dif- 
ferent waveforms.  Each  of  the  SID 


chip's  three  voices  can  produce  four 

different  waveforms,  diagrammed 
in  Figure  2.  The  triangle  waveform 
(used  for  the  flute,  instrument  4)  is 
soft  and  rich.  The  sawtooth  wave 
(used  for  the  guitar,  instrument  5) 
creates  a  louder,  harsher  sound. 

The  pulse  waveform  (used  for 
the  organ,  instrument  7)  is  the  most 
versatile  of  all.  It's  louder  than  the 
triangle  wave  and  can  be  adjusted 
to  make  sounds  that  are  rich  and 
full  or  thin  and  faint.  The  noise 
waveform  (used  for  the  drum,  in- 
strument 3)  is  a  random  mish-mash 
of  frequencies  that  make  a  hissing 
or  rushing  sound.  ENVELOPE  uses 
the  following  waveform  numbers: 


Number 

0 
1 
2 
3 
4 


Waveform 

Triangle 

Sawtooth 

Pulse 

Noise 

Ring  Modulation 


Ring  modulation  is  a  special 
effect,  different  from  the  other 
waveforms.  The  SID  chip  creates 
ring  modulation  by  combining  the 
frequencies  of  two  voices  into  one 
complex  sound.  Note  that  ENVE- 
LOPE cannot  use  synchronization, 
another  SID  effect  familiar  to  64 
programmers. 

Finally,  ENVELOPE  lets  you 
choose  different  pulsewidth  values 
for  the  pulse  waveform  (2).  The 
pulsewidth  number  can  range  from 
0-4095.  Look  again  at  the  pulse 
wave  diagram  in  Figure  2.  The  top 
portion  of  each  wave  is  wider  than 
the  bottom  portion.  The  pulsewidth 
value  defines  the  ratio  between 
these  two  parts  of  the  wave.  Medi- 
um pulsewidth  values  (roughly 
from  1000-3000)  produce  fairly 
symmetrical  waves  and  full,  solid 
tones.  Very  small  or  very  large 
pulsewidth  values  produce  assymet- 
rical  waves  and  thin,  hollow  tones. 

ENVELOPE  With  PLAY 

To  see  what  ENVELOPE  can  do, 
add  line  30  to  the  example  program 
and  insert  Tl  in  line  100  as  shown 
below: 

30  ENVELOPE  1,  7,  0,  0,  0,  2,  2000 
100  PLAY  "Tl  CDEFGFEDC" 

Run  the  program  again  and  no- 
tice how  different  the  new  instru- 
ment sounds.  Line  30  selects 
instrument  1,  sets  attack  at  7,  decay, 
sustain,  and  release  at  0,  waveform 


August  1985     COMPUTEI      77 


at  2  (pulse),  and  pulsewidth  at 
2000. 

The  Tl  in  line  100  might  seem 
redundant  at  first:  If  ENVELOPE 
selects  instrument  1,  why  specify 
instrument  1  again  in  the  PLAY 
statement?  This  is  necessary  be- 
cause of  the  default  system.  Until 
you  specify  otherwise  in  a  PLAY 
statement,  PLAY  always  uses  in- 
strument 0,  the  piano.  Thus,  when- 
ever you  define  a  new  instrument 
with  ENVELOPE,  you  must  use  the 
same  instrument  number  after  T  in 
the  appropriate  PLAY  statement.  If 
you  forget,  PLAY  ignores  the  EN- 
VELOPE statement  and  uses  instru- 
ment 0  or  whatever  instrument  you 
last  selected  with  T. 

Redefining  an  instrument  with 
ENVELOPE  replaces  the  prede- 
fined instrument  of  that  number. 
Thus,  you  can  never  have  more 
than  ten  instruments  at  once.  How- 
ever, new  instruments  can  be  intro- 
duced at  any  time  with  new 
ENVELOPE  statements. 

ENVELOPE  can  be  tricky  to 
handle,  since  it  gives  you  total  con- 
trol over  the  AD5R  envelope  and 


must  be  properly  integrated  with 
other  sound  commands.  For  in- 
stance, an  envelope  that  sounds 
fine  at  slow  tempos  may  be  unsuit- 
able at  faster  tempos.  Don't  be  dis- 
couraged if  your  first  experiments 
sometimes  fail.  Remember,  ENVE- 
LOPE is  necessary  only  for  custom- 
ized instrument  sounds.  If  you're 
happy  with  the  predefined  instru- 
ments, just  use  T  in  a  PLAY  state- 
ment to  choose  the  one  you  want. 


Figure  1 .  Typical  Sound 
Envelope 


Figure  2.  Commodore  1 28 
Waveforms 


Triangle 


Sawtooth 


Pulse 


Noise 


Colorful  Text  For 
IBM  Graphics 


Peter  F,  Nicholson,  Jr, 


IBM  personal  computers  provide  a 
wealth  of  graphics  modes.  Here's  a 
method  of  printing  text  on  graphics 
screens  with  different  foreground  col- 
ors to  brighten  up  your  screen  dis- 
plays. The  technique  works  on  the 
IBM  PCjr  with  Cartridge  BASIC  or 
the  PC  with  BASICA  and  color/ 
graphics  adapter  card. 


The  IBM  PCjr  and  the  PC  with  a 
color/graphics  adapter  both  have 
the  ability  to  print  different-colored 
foreground  characters  on  the  same 
colored  background.  Medium- 
resolution  graphics  mode  gives  you 
a  choice  of  16  different  background 
colors  and  two  different  foreground 
color  palettes  (red/brown/green  or 
cyan/magenta/white).   According 


to  page  1-9  of  the  BASIC  reference 
manual  for  the  PC,  the  following 
statement  changes  character  colors 
(substitute  1,  2,  or  3  for  color 
number): 

DEF  SEG:POKE  &H4E,co/or  number 

Although  this  changes  the 
character  color,  it  also  replaces  the 
background   color  with  color   0 


78     COMPUTEI      August  1985 


(black).  It's  not  mentioned  in  the 
manual,  but  there  is  a  way  to 
change  the  foreground  color  with- 
out losing  the  background  color. 
Simply  add  128  to  the  color  number 
in  the  above  statement.  This  per- 
forms a  bit  manipulation  called  an 
exclusive  OR  (XOR)  of  the  color  val- 
ue, allowing  you  to  print  any  fore- 
ground color  on  the  background. 

To  see  a  demonstration,  type  in 
and  save  the  program  below,  then 
run  it.  The  program  illustrates  the 
difference  between  normal  and 
XOR  printing  and  lets  you  experi- 
ment with  many  different  back- 
ground and  foreground  color 
combinations. 


Character  Colors  For 
XOR  Printing 


Resulting  Character 
Color 


Color  Where 
Character  Will  Be 
XOR  FRINTed 

&H4E=  &H4E=   &H4E'= 
129  130  131 


Remember  to  restore  the  value 
in  memory  location  &H4E  to  either 
1,  2,  or  3  when  you're  editing.  Oth- 
erwise anything  you  type  is  XORed 
with  whatever  is  on  the  screen.  The 
easiest  way  to  avoid  this  problem  is 
to  clear  the  screen  (press  CTRL- 
HOME)  and  press  function  key  10 
to  edit  in  SCREEN  0.  The  table 
shows  the  values  you  can  POKE 
into  &H4E  to  generate  various  color 
combinations. 

XOR  Printing 

JB  100  SCREEN  1:KEY  OFF:PAL=0:BA 

CK-0IBOSUB  1S00ICOLOR  BAC 

K.PAL 
BK  1 1 0  CLS  s  C0L=3  5  X  0=40  !  YB-^B  t  BOS 

UB  1000:COL-0:GOSUB  1000 
FH  120  CDL=3:X0=40:Y0=J16:GOSUB 

10001 CQL-0:GOSUB  1000 
6A  130  GOSUB  2000:  POKE  !(H4E,i:La 

GATE  3,  Bl  PRINT  "!<H4E=1" 
DL  140  FDR  i»5  TO  f    STEP  2:  LDCftT 

E  I, Bi PRINT  PftL«(PAL,l);: 

NEXT  I 
KC  150  POKE  &H4E,  2:  LOCATE  3,ia!p 

RINT  "fcH4E-2" 
LN  16,0    FDR  1-5  TO  9    STEP  2  s  LOCAT 

E  IjlBtPRINT  PAL«(PAL,2)! 

iNEXT  I 
111  170  POKE  !<H4E,  3:  LOCATE  3,2B:P 

RINT  "8.H4E-3" 


«H  1B0  FOR  1=5  TO  9  STEP  2:  LOCAT 

E  I,28iPRINT  PAL*fPftL,3>s 

sNEXT  I 
KB  190  POKE  «<H4E,1:  LOCATE  14,7:P 

RINT  "S.H4E"  129"!  POKE  tcH4E 

,129  . 
BJ  200  FDR  1  =  1  i  TO  20  STEP  2:L0C 

ATE  I,6:PRINT  COLl*(FIX(( 

I-16)/2> > ; :NEXT  I 
BH  210  POKE  «tH4E,  2:  LOCATE  14,17: 

PRINT  "8.H4E"  130":  POKE  &H4 

E,130 
LI  220  FOR  1  =  16  TO  20  STEP  2:L0C 

ATE  I,1B:PRINT  COLZ«(FIX( 

(I-16)/2) ) ; ;NEXT  I 
LN  230  POKE  S.H4E,  3:  LOCATE  14,27: 

PRINT  "t<H4E-131":PDKE  &H4 

E,  131 
(W  240  FOR  1  =  16  TO  20  STEP  2:  LDC 

ATE  I, 28: PRINT  C0L3«(FIX( 
tI-16)/2) ) ( tNEXT  I 
LS  250  POKE  S.H4E,  3:  LOCATE  1 ,  1 ;  PR 

INT  "Normal  Printing"; 
PL  260  LOCATE  12,1:PRINT  "XOR  Pr 

inting"; 
KL  270  LOCATE  22,1:  PR  I  NT  STRING* 

(40,CHR«(32) )  ; 
ON  2B0  LOCATE  22,i:PRINT  "Backgr 

ound  " ) BACK* ( BACK ) 5 : LDCAT 

E  22, 25i PRINT  "Palette  "; 

PAL  J 
BE  290  LOCATE  23,1: PRINT  "Press 

Q  To  Quit"+STRING«(24,CHR 

«(32)  )  ; 
FS  300  LOCATE  24,1:  PRINT  "Press 

Esc  To  Change  Palette") 
11  310  LOCATE  25,1:  PRINT  "Press 

Space  Bar  To  Change  Backg 

round"! 
JH  320  Ka»=rNKEY»! IF  KB*=""  THEN 

330  ELSE  320 
ED  330  KB«=INKEY«: IF  KB»=""  THEN 

330 
Oe  340  IF  KB«="q"  OR  KB«-"Q"  THE 

N  CLS I  END 
ftS  350  IF  ASC(KB«)=32  THEN  3B0  E 

LSE  IF  ASC(KB*)><27  THEN 

330 
HI  360  IF  PAL-1  THEN  PAL=0  ELSE 

PAL-1 
HF  370  COLOR  BACK,  PAL:  GOTO  130 
te  3S0  LOCATE  25,1  SPRINT  STRING* 

(38,CHR*(32) ) ; 
KL  390  LOCATE  24,1:  PRINT  STRING* 

(3B,CHR*(32) ) ; 
LL  400  LOCATE  23,  1 :  INPUT  "Enter 

Color  Number  (0-15)  ";BAC 

K 
KK  410  COLOR  BACK,  PAL:  GOTO  130 
DD  1000  PRESET  (X0,Y0) 
K    1010  FOR  1=1  TD  3 
BH  1020  LINE  STEP  (0,0) -STEP  (240, 

16) ,COL,B 
OL  1030  PRESET  STEP<-240,0) 
EL  1040  NEXT  I 
EN  1050  PRESET  (X0,Y0) 
B9  1060  FOR  1  =  1  TO  3 
HL  1070  LINE  STEP  (0,0) -STEP  (80,  4 

0) ,COL,B 
«F  10B0  PRESET  STEP  £0,-48) 
NN  1090  NEXT  Is  IF  COL-0  THEN  GOT 
0  1130 
1100  FOR  1=1  TO  3: FOR  J=l  TO 

3 
1110  PAINT (X0+20+B0t (I-l) ,Y0+ 
a+16«(J-l)) , J,3 
lA  1120  NEXT  J:  NEXT  I 
IS  1130  RETURN 
BH  1500  DIM  PAL*  (1,3) 
KH  1510  FOR  1=0  TO  1 :  FOR  J=l  TO 
3:  READ  PAL* ( I , J ) : NEXT  J: 
NEXT  I 
1520  DATA  "GREEN", "RED", "BROW 


HO 


PP 


JB 


m   1530 

E6  1540 
PB  1550 


AA  1560 


BI  1570 
QL  15B0 


HG  1590 


NH  1600 
EC  2000 


CK  2010 


EG  2020 


IH  2030 
HE  2040 


KJ  2050 


HC  2060 
HD  2070 


PK  2080 


01  2090 
PS  2100 


OK  2110 


!E  2120 


N", 
TE" 
DIM 
FOR 
(I) 
DATA 


CYAN" 


"MAGENTA" 


"WHI 


BACK* (15) 

1=0  TD  IS: READ  BACK* 

NEXT  I 

BLACK", "BLUE", "GRE 
"RED", "M AGENT 


EN", "CYAN 
A", "BROWN" 

DATA  "WHITE", "GRAY", "L  B 
LUE","L  GREEN", "L  CYAN", 
"L  RED","L  MASTA" 
DATA  "YELLOW", "HI  WHITE" 
BLOCK*=STRING* (8, CHR* (25 
S) )! AX-PEEK (VftRPTR( BLOCK 
*) +1 ) : BX-PEEK ( VARPTR (BLO 
CK*)+2) 

DEF  SEE=0!PDKE  124,A"/.:PD 
KE  125,6?.!  POKE  126,  PEEK  ( 
&HS  1 0 )  ! POKE  127,PEEK(S<H5 
11) 

DEF  SEG: RETURN 
COL 1 * { 0) =BACKS ( BACK  > : COL 
1« ( 1 ) -PAL* (PAL, 3 ) : COLl* ( 
2) -PAL* (PAL, 2) 
C0L2* (0) =PAL* (PAL, 3) : COL 
2« ( 1 ) -BACK*  <  BACK) s  C0L2* ( 
2) -PAL* (PAL, 1) 
CDL3* (0) =PAL« (PAL, 2) ! CDL 
3* ( 1 ) -PAL* (PAL, 1 ) : C0L3* ( 
2) -BACK* (BACK) 
DEF  SEG !  POKE  S<H4E,1 
FOR  I=B  TO  28  STEP  10s LD 
GATE  5,I:PRINT  STR1NG«(B 
,CHR*(12B) ) ; :NEXT  I 
FOR  I=B  TO  28  STEP  10: LD 
CATE  16,IsPRINT  STRING*( 
B,CHR*(12a) ); sNEXT  I 
POKE  S<H4E,2 

FOR  I=B  TD  28  STEP  10: LO 
CATE  7,I:PRINT  STRINGS(B 
,CHR*(12a)); :NEXT  1 
FDR  1-B  TD  2B  STEP  10! LD 
CATE  IB, 1 1  PRINT  STRING* ( 
B,CHR«(12S) ) ; sNEXT  I 
POKE  liH4E,3 

FDR  1=8  TD  28  STEP  10: LO 
CATE  9, I: PRINT  STRING* (8 
,CHR«(12B) ) ; :NEXT  I 
FOR  1=8  TO  2B  STEP  10; LO 
CATE  20, I  SPRINT  STRING* ( 
S, CHR* (128)) I sNEXT  I 
RETURN  (Pi 


Copies  of  articles  from  this 
publication  are  now  available  from 
the  UMI  Article  Clearinghouse. 

Vei!  1  would  like  to  kn^-  more  about  L'.Ml  Article 
Clearinghouse.  ]  am  interested  in  electronic 
ordering  throtjgh  the  folltm'ingsv'stemlsl: 
3  DLUjOC'Dialordtr  3  ITT  Dial  com 

HOnTyme  UOCLCIUL  Subsystem 

D  Other  Ipleasespecifyl- 


j  I  am  interested  in  sending  rriy  order  by  mail 
3  Please  send  me  your  current  catalog  and  user  instruc- 
tions for  the  systemfsl  I  checked  above. 

Name 

Title 

Institution  .'Company ^ 

Department 

Address 

CiH' Statf- 

Phone  1 1 


_Zip._ 


ru!KI[.\iti('J(» 
CToannghouse 

.Mail  to:  UniversiK"  .Microfilms  International 

300  North  Zeeb  Road.  Boj  91    Ann  Arbor.  Ml  48106 


August  1985     COMPUTEI     79 


Advanced  1541  Disk  Commands 


If  you  zvant  to  go  beyo?id  the  basks  of 
Commodore  disk  programming,  you'll 
need  to  learn  direct  access  disk  com- 
mands. These  powerful  commands 
allow  you  to  read  and  write  individ- 
ual blocks  on  a  disk.  However,  since 
improper  use  can  irretrievably  scram- 
ble a  disk,  they  are  recommended  for 
intermediate  and  advanced  program- 
mers only.  You  should  experiment 
with  them  on  a  scratch  disk  before 
attempting  to  manipulate  any  impor- 
tant files.  The  techniques  work  on  any 
Commodore  computer  with  a  1541 
disk  drive. 


The  1541  disk  drive  is  a  complex 
device,  often  called  an  intelligent 
peripheral  because  it  contains  its 
own  microprocessor  and  operating 
system.  With  most  computers  (such 
as  Apple,  Atari,  and  IBM),  the  Disk 
Operating  System  (DOS)  is  a  pro- 
gram you  must  load  into  the  com- 
puter before  using  the  disk  drive. 
Commodore's  DOS,  on  the  other 
hand,  is  permanently  stored  in 
Read  Only  Memory  (ROM)  inside 
the  drive  itself. 

The  Commodore  system  has 
some  real  advantages:  DOS  does 
not  take  up  any  of  the  computer's 
memory,  and  it's  available  the  in- 
stant you  turn  on  the  drive.  It  also 
makes  the  1541  drive  independent- 
ly programmable.  By  sending  direct 
access  commands  to  the  drive,  you 
can  read  or  write  to  any  area  on  the 
disk,  read  or  write  to  the  drive's 
internal  memory,  and  even  run 
your  own  ML  programs  in  the 
drive. 

In  this  article  we'll  cover  three 
commands  used  to  manipulate  in- 
dividual disk  blocks.  A  block,  also 
called  a  sector,  is  a  small  area  on  the 


Dave  Straub 


disk  that  stores  256  bytes  of  data. 
As  shown  in  your  1542  User's  Man- 
ual, each  disk  is  divided  into  35 
separate  tracks,  with  each  track  sub- 
divided into  anywhere  from  17  to 
21  individual  blocks  or  sectors.  This 
yields  a  total  of  683  blocks,  each 
with  its  own  track  and  block  num- 
ber. For  example,  the  first  part  of 
the  disk  directory  is  stored  in  track 
18,  block  1. 

The  Command  Channel 

The  first  step  in  most  Commodore 
disk  programs  is  to  open  the  com- 
mand channel  to  the  drive.  This  is  a 
special  channel  used  to  send  in- 
structions to  the  drive  and  check  for 
errors.  Open  it  with  a  line  similar  to 
this: 

10  OPEN  3,8,15 

This  opens  communications  on 
channel  number  3  to  device  num- 
ber 8  (the  drive)  with  a  secondary 
address  of  15.  The  channel  (some- 
times called  a  logical  file)  number 
can  be  anything  from  1-15.  Once  a 
channel  is  open,  GET#,  INPUT#, 
and  PRINT#  statements  are  used 
zcith  the  channel  number  to  send  or 
retrieve  information  on  that  chan- 
nel. The  number  following  the  # 
character  in  these  statements  must 
match  the  channel  number  used  in 
the  OPEN  statement.  For  example, 
if  the  channel  is  opened  with  OPEN 
3,8,15,  then  PRINT#3,"10"  sends 
an  initialization  command  to  the 
drive  on  the  command  channel. 

The  device  number  specifies 
which  drive  is  being  accessed.  The 
device  number  of  the  1541  drive  is 
always  8  unless  you  change  it 
through  software  or  by  modifying 
the  drive. 

A  secondary  address  of  15  has  a 


special  meaning:  It  activates  the 
command  channel  regardless  of 
what  channel  number  is  used.  For 
example,  OPEN  1,8,15  or  OPEN 
15,8,15  both  activate  the  command 
channel,  using  channel  numbers  1 
and  15,  respectively. 

In  this  article  the  command 
channel  is  used  only  to  send  direct 
access  commands  to  the  drive, 
However,  the  command  channel 
also  serves  the  important  function 
of  relaying  drive  error  messages  to 
the  computer,  as  explained  in  your 
1541  User's  Manual. 

Buffer  Channels 

The  command  channel's  abilities 
are  vital  but  limited:  It  can  only 
transmit  commands  and  error  mes- 
sages. To  transfer  data  (information 
stored  on  the  disk),  you  must  open 
a  second  channel.  When  this  is 
done,  the  drive  sets  aside  a  256- 
byte  buffer  area  within  its  internal 
memory.  It's  no  coincidence  that 
the  buffer  is  exactly  the  right  size 
for  storing  a  block  of  disk  data. 
Since  all  data  moves  through  the 
drive's  buffers,  this  type  of  channel 
is  often  called  a  buffer  channel,  al- 
though data  channel  might  be  a 
more  descriptive  term.  To  open  a 
buffer  channel,  use  "#"  as  a  file- 
name in  an  OPEN  command: 

OPEN  2,8,2,"#" 

This  statement  tells  the  1541  to 
open  buffer  channel  2  to  device 
number  8  with  a  secondary  address 
of  2,  and  the  special  filename  "#" 
reserves  a  buffer  in  the  drive.  The 
secondary  address  can  be  any  num- 
ber from  2-14. 

Now  that  the  channel  is  open, 
you  can  find  out  which  buffer  the 
1541  has  reserved.  Use  GET#  to 


80     COMPUTEI      August  1985 


retrieve  the  first  character  available 
from  that  channel: 

10  OPEN  2,3,2,"#":GET#2,X$ 

20  PRINT  "BUFFER"ASC(X$  +  CHRS 

(0))"USED" 
30  CLOSE  2 

This  program  opens  a  data 
channel  and  retrieves  the  number 
of  the  buffer  reserved  for  that  chan- 
nel. The  1541  has  five  256-byte 
buffers  located  at  these  addresses: 

Buffer  0  $0300-03FF  (786-1023) 

Buffer  1  $0400-04FF  (1024-1279) 

Buffer  2  $O5O0-OSFF  (1280-1535) 

Buffer  3  S0600-06FF  (1536-1791) 

Buffer  4  S0700-07FF  (1792-2047) 

In  most  cases  you  needn't  worry 

about  which  buffer  is  reserved  for 
your  data.  The  1541  manages  the 
buffers  by  itself  and  always  re- 
serves one  for  you  unless  none  is 
available.  However,  by  adding  a 
number  after  the  #  character,  you 
can  force  the  drive  to  reserve  a  spe- 
cific buffer.  For  instance,  the  state- 
ment OPEN  2,8,2,"#1"  makes  the 
drive  set  aside  buffer  number  1  for 
channel  number  2. 

To  avoid  needless  errors,  don't 
specify  a  buffer  unless  you  really 
need  to  do  so.  The  buffers  are  also 
the  154 1's  main  data  area,  and  at 
any  given  time  one  or  more  of  them 
may  already  be  in  use.  For  instance, 
buffer  4  stores  the  Block  Availa- 
bility Map  (BAM)  of  the  current 
disk  and  is  almost  never  available. 
The  1541  generates  a  NO  CHAN- 
NEL error  message  when  you  try  to 
use  a  buffer  that's  already  reserved 
or  try  to  access  a  channel  that 
wasn't  properly  opened. 

Block-Read 

The  Block-Read  command  does  ex- 
actly what  the  name  implies,  read- 
ing a  block  of  information  from  the 
disk  and  storing  it  in  a  data  buffer  in 
the  drive.  Once  the  block  has  been 
read,  you  can  transfer  all  or  part  of 
it  to  the  computer's  memory  with 
GET#  or  INPUT*  statements. 

Block-Read  has  two  alternate 
forms,  one  that  works  as  expected 
and  another  that  doesn't.  Despite 
what  your  1 54 1  User's  Guide  says, 
don't  use  the  B-R  form  of  Block- 
Read.  Use  the  alternate  form  (Ul) 
instead.  Ul  always  reads  an  entire 
block  in  correct  order,  beginning 
with  the  first  byte  of  the  block  and 
ending  with  the  last.  To  see  how  Ul 
works,  type  in  and  save  Program  1 


below.  Program  1  works  as  listed 
on  the  Commodore  64  and  the  128 
in  64  mode.  For  the  unexpanded 
VIC,  change  line  0  to: 

0    POKE    36979, 30 :X1=7680:X2=384 
00  :rem   212 

For  the  Commodore  16  or  Plus/4, 
ignore  the  :rem  numbers  at  the  end 
of  each  line  (they  are  for  the 
VIC/64   "Automatic   Proofreader" 

program)  and  change  line  0  to: 

0   X1=3072!X2=2048:COLOR0,2 

Before  running  Program  1,  put 
an  unimportant  disic  in  the  drive.  Di- 
rect access  commands  are  very 
powerful;  even  a  slight  typing  error 
in  these  programs  can  garble  an 
entire  disk,  destroying  all  of  its 
data.  Until  you  have  gained  some 
experience  with  these  commands, 
it's  best  to  practice  on  a  disk  that 
doesn't  contain  important  programs 
or  data. 

When  you  run  Program  1,  it 
displays  the  256  bytes  stored  in 
track  18,  block  0  of  your  disk. 
Among  other  things,  this  disk  block 
contains  the  disk  name  and  ID.  Line 
10  of  the  program  opens  the  com- 
mand channel  (to  send  commands 
to  the  drive)  and  line  20  opens  the 
buffer  channel  to  reserve  a  data 
buffer.  Line  30  contains  the  Block- 
Read  command  (Ul).  Note  that  line 
30  uses  PRINT#3  to  send  the  Ul 
command.  Block-Read  is  an  in- 
struction to  the  drive;  like  other 
instructions  it  must  be  sent  via  the 
command  channel  (in  this  case 
channel  3). 

The  actual  command  is  en- 
closed in  quotation  marks.  First 
comes  the  command  itself,  fol- 
lowed by  several  parameters  sepa- 
rated by  spaces.  The  first  number 
after  Ul  is  2,  telling  the  drive  to 
read  the  block  into  the  buffer  re- 
served for  channel  2. 

The  next  parameter  must  al- 
ways be  0  to  indicate  drive  number 
0.  (This  is  a  holdover  from  the  old 
Commodore  PET  dual  drives  that 
are  numbered  0  and  1.  The  1541 
drive  is  always  drive  0,  even  when 
two  1541s  with  different  device 
numbers  are  daisy-chained  togeth- 
er.) The  last  two  parameters  inside 
quotes  are  the  track  and  sector 
numbers  of  the  block  you  wish  to 
read.  In  this  case,  18  and  0  are  used 


to  read  block  0  of  track  18  from  the 
disk. 

In  line  50  of  Program  1,  GET#2 
retrieves  data  from  the  buffer  chan- 
nel. (Since  CET#  reads  incoming 
zero  bytes  as  null  characters — 
which  would  crash  the  A5C  func- 
tion with  an  error  message — it's  al- 
ways necessary  to  concatenate  X$ 
with  CHR$(0).)  Line  70  ends  the 
program  by  closing  both  channels. 
Since  channel  2  was  the  last  chan- 
nel opened,  it  is  the  first  one  closed. 
Always  end  a  program  of  this  type 
by  closing  every  channel  you 
opened. 

Buffer-Pointer 

Ul  always  reads  a  whole  block,  but 
in  some  cases  you'll  be  interested  in 
only  part  of  the  block.  For  example, 
you  might  want  one  program  name 
from  a  directory  block.  The  Buffer- 
Pointer  command  (abbreviated  B-P) 
is  designed  for  just  such  occasions. 
It  points  the  drive  to  a  designated 
byte  within  the  data  buffer,  allow- 
ing you  to  read  only  the  bytes  you 
want.  The  general  procedure  is  to 
read  a  block  into  the  buffer  with 
Ul,  set  the  pointer  with  B-P,  then 
retrieve  the  desired  bytes  with 
GET#. 

Type  in  and  save  Program  2, 
then  run  it.  The  program  first  reads 
the  block  from  track  18,  block  1  into 
a  buffer.  Then  B-P  sets  the  buffer 
pointer  to  byte  5.  Like  other  direct 
access  commands,  B-P  is  also  en- 
closed in  quotes.  The  second  pa- 
rameter in  the  command  is  2,  telling 
the  drive  to  use  buffer  channel  2. 
After  2  comes  5,  the  number  of  the 
byte  you  want  to  point  at.  The  re- 
mainder of  the  program  simply 
prints  the  name  of  the  first  program 
stored  on  the  disk. 

Biock-Write 

The  Block-Write  command  is  the 
opposite  of  Block-Read,  letting  you 
write  a  block  of  data  from  a  buffer 
to  any  block  on  the  disk.  Block- 
Write  also  comes  in  two  forms, 
good  and  bad.  Skip  the  B-W  com- 
mand; it  has  the  same  defects  as  B-R. 
Use  U2  whenever  you  want  to 
write  a  block  of  data  to  disk. 

To  see  Block-Write  at  work, 
first  load  Program  2,  then  add  the 
lines  listed  below  as  Program  3. 
Note  that  line  80  of  Program  3  re- 
places line  80  of  Program  2,  and  be 
sure  to  save  a  copy  of  this  program 


August  1985     COMPUTEI      81 


before  you  run  it.  This  program 
combines  all  three  of  the  com- 
mands discussed  so  far.  First  it 
reads  the  name  of  the  first  program 
in  the  disk  directory  from  block  1  of 
track  18,  then  it  asks  you  to  type  in 
a  new  program  name.  If  the  new 
name  is  less  than  16  characters,  line 
110  "pads"  the  end  of  the  name 
with  SHIFTed  space  characters. 

You're  almost  ready  to  write 
the  new  name  back  to  the  data  buff- 
er. But  first  it's  necessary  to  set  the 
buffer  pointer  back  to  the  spot 
where  the  old  name  begins  in  the 
buffer  (line  120).  This  step  is  criti- 
cal, because  GET#  affects  the  buffer 
pointer  much  as  PRINT  affects  the 
cursor  on  the  screen.  Every  time 
GET#  fetches  a  character  from  the 
buffer,  the  pointer  automatically 
moves  one  byte  forward.  Lines 
50-70  repeated  GET#  16  times, 
moving  the  pointer  16  bytes  for- 
ward. Thus,  before  writing  the  new 
name  back  into  the  buffer,  it's  nec- 
essary to  reset  the  pointer  with  a 
second  B-P  command. 

Line  130  writes  the  new  name 
to  the  buffer;  since  the  name  is  data 
(not  an  instruction),  it's  transmitted 
over  the  data  channel  with 
PRINT#2.  Line  140  sends  the  U2 


command  over  channel  3  to  com- 
plete the  process,  telling  the  drive 
to  write  the  entire  contents  of  the 
buffer  back  to  track  18,  block  1  of 
the  disk. 

As  you've  probably  gathered 
by  now,  the  1541  drive  handles 
disk  data  in  block-sized  chunks. 
Though  you  may  want  to  change 
only  one  or  two  bytes  in  a  block,  it's 
necessary  to  read  the  whole  block 
into  the  drive,  make  the  changes, 
then  write  the  altered  block  back  to 
disk  again.  There's  much  more  to 
direct  access  programming,  of 
course,  but  you  can  do  a  great  deal 
with  these  few  commands,  moving 
freely  around  the  disk  to  examine 
or  modify  whatever  you  find. 


Pleas©  refer  to  "COMPUTEI's  Guide  to  Typing 
In  Programs"  In  this  Issue  before  entering  the 
following  listings. 

Program  1:  Block-Read 
Demo 

0   POKE53281,1:X1=1024:X2=55296 

: rem    146 
5    PRItJTCHR5{147)CHR5(9)CHRS(14 
) :FORJ=1TO10: PRINT :NEXT 

:rem   IS 
10    0PEN3,8,15  :rem    188 

20    OPEN2,8,2,  "#"  :rei:i    27 

30    PRINT#3,"U1    2    0    18    0" 

:rem    55 
40   FOR  X=0   TO   255  : rem   79 


50  GET#2,X5:Y=ASC(XS+CHR$(0)) 

: rem  99 
60  POKEX1+X,Y:POKEX2+X,05NEXT 

: rem  113 
70  CLOSE2SCLOSE3       ! rem  242 

Program  2:  Buffer-Pointer 
Demo 

10  OPEN3,8,15  :rem  188 

20  OPEN2,8,2,"#"        :rem  27 
30  PRINT#3,"U1  2  0  18  1" 

:reni  56 
40  PRINT#3,"B-P  2  5"   :rem  221 
50  FORX=0TO15:GET#2,XS  : rem  49 
60  IFX5<>CHR$( 160)THENPRINTX5+ 
CHRS(0)  ,-  :rem  244 

70  NEXT  srem  166 

80  CLOSE2!CLOSE3       : rem  243 

Program  3:  Block-Write 
Demo 


80  PRINTS  PRINT "WHAT  I 

NAME?" 
90  INPUT  C5 
100  FORJ=lT016tDS=D5+ 

:NEXT 
110  CS=LEFT?(CS+D?,16 
120  PRINT#3, "B-P  2  5" 
130  PRINT#2,C$ 
140  PRINT* 3, "U2  2  0  1 

200  CLOSE2SCLOSE3 


S  THE  NEW 

: rem  251 

:rem  96 

CHR$(160) 
: rem  14 
: rem  99 
!rem  12 
:rem  9 
1" 

rem  107 
: rem  29 


IBM  Filecopy 


John  Klein  and  Jeff  Kiein 


Here's  a  fast  and  easy  way  to  backup 
multiple  files  on  your  disks  for  safe- 
keeping. It  works  on  any  IBM  PC, 
PCjr,  or  compatible  with  at  least  64K 
RAM  and  one  or  two  floppy  disk 
drives. 


What  is  rule  number  one  when  you 
use  a  computer?  Always  make  back- 
up copies  of  all  important  files. 


But  despite  one  of  the  most 

powerful  disk  operating  systems  in 
personal  computing,  that  rule  isn't 
always  easy  to  follow  on  the  IBM. 
DOS's  DISKCOPY  utihty  indis- 
criminately copies  the  entire  disk, 
while  the  COPY  command  backs 
up  only  individual  files.  Neither  al- 
lows you  to  copy  groups  of  specific 
files  from  disk  to  disk  or  directory  to 
directory  very  easily.  Even  if  you 


have  two  drives,  it's  time-consuming 
to  combine  files  from  several  disks 
onto  a  single  backup  disk,  or  to 
backup  a  group  of  updated  files.  As 
a  result,  many  of  us  don't  make 
backups  as  often  as  we  should. 

"IBM  Filecopy"  offers  a  solu- 
tion to  this  problem.  It's  a  utility 
program  that  works  on  any  IBM 
PC,  PCjr,  or  true  compatible  with 
one  or  two  disk  drives.  Filecopy  lets 


82     COMPUTEl     August  19B5 


Table  1:  Using  IBM  Filecopy 

Type  of  copy  wanted:  Target  path  to  enter; 

Same  drive,  directory  'TEST"      \TEST  (DOS  2.1  only) 
Drive  B,  same  directory 


Drive  B,  directory  'TEST" 


B: 
B:\TEST 


Table  2:  End  of  Copy  Phase 


Screen  Message: 

REM  •♦•  COPY  COMPLETE 
A>ERASE  FILECOPY.BAT 
Insert  disk  with  batch  tile 
and  press  any  key  when  ready 

A>-C 

Terminate  batch  job  (Y/^f)7 

A> 


Operation/Response: 

Copies  completed. 
Batch  file  erases  itself. 

DOS  error  message.  Press  any 

key 

Press  BREAK. 

DOS  message.  Type  Y. 

Backup  process  finished; 

returned  to  DOS. 


you  backup  disks,  directory  by  di- 
rectory, or  selectively  backup  indi- 
vidual files.  These  files  can  be  of 
any  type:  BASIC,  binary,  com- 
mand, etc.  The  files  can  be  copied 
to  any  subdirectory  on  any  other 
disk  or  the  same  disk. 

Using  Filecopy 

Filecopy  is  a  BASIC  program  wrhich 
creates  a  temporary  DOS  batch  file 
to  copy  the  specified  files  to  the 
backup  destination.  When  run,  the 
program  first  asks  you  to  insert  the 
source  disk.  This  is  the  disk  which 
contains  the  files  you  want  to  back- 
up. Then  the  program  asks  for  the 
source  directory  of  the  source  disk. 
If  you're  not  copying  from  a  subdi- 
rectory, just  type  N  at  this  prompt. 
In  either  case,  Filecopy  reads  the 
filenames  from  the  source  directory 
and  stores  them  in  an  array  for  later 
use. 

Next  the  program  asks  you  for 
the  target  path,  the  destination  for 
the  backups.  Type  B:  for  drive  B  or 
A:  for  drive  A  (be  sure  to  type  the 
colon  after  the  drive  designator — B: 
instead  of  B),  Then  type  \directon/ 
name  if  you're  copying  the  files  to  a 
subdirectory  on  the  destination 
disk.  You  don't  have  to  specify  a 
directory  if  you're  copying  the  files 
to  the  root  (default)  directory.  If 
you're  using  a  one-drive  system, 
type  B:  for  the  target  path  as  if  you 
really  have  two  drives.  Never  speci- 
fy the  same  drive  and  directory  as 
the  source  drive  and  directory,  be- 
cause the  program  won't  copy  files 
onto  themselves.  (See  Table  1  for 
sample  copy  procedures.) 

Filecopy  then  displays  each 
filename  from  the  source  directory 
and  asks  if  you  want  a  copy.  Simply 
type  Y  for  each  file  you  want  cop- 
ied, or  N  for  those  you  don't  want 


copied.  Note:  When  Filecopy  en- 
counters a  subdirectory  name  on 
your  source  disk,  it's  fooled  into 
thinking  the  subdirectory  is  a  regu- 
lar file.  Since  it  can't  copy  subdirec- 
tory names,  you  must  answer  N 
when  the  program  asks  if  you  want 
to  backup  the  subdirectory. 

After  Filecopy  queries  you  on 
all  of  the  filenames,  it  asks  for  con- 
firmation: "Is  this  all  okay?"  If  you 
accidentally  typed  a  wrong  Y  or  N 
at  a  previous  prompt,  type  N  at  this 
one  to  get  another  chance.  When 
you  confirm  your  choices  by  typing 
Y,  Filecopy  stores  the  names  of  the 
files  you  want  copied  in  a  tempo- 
rary batch  file  on  the  source  disk.  (If 
the  source  disk  is  write-protected, 
an  error  message  appears  and  the 
program  halts.)  Then  it  returns  you 
to  DOS. 

The  next  step  is  to  type  FILE- 
COPY  at  the  DOS  prompt.  This 
commands  the  batch  file  to  copy 
each  of  the  files  you  selected  from 
the  source  disk  to  the  target  disk 
and  directory.  If  you're  using  a  one- 
drive  system,  DOS  asks  you  to 
swap  disks  as  it  copies  each  file. 

After  the  backup  is  complete, 
the  temporary  batch  file  erases  it- 
self off  the  source  disk.  This  brings 
up  an  unavoidable  DOS  error  mes- 
sage, "Insert  disk  with  batch  file 
and  press  any  key  when  ready." 
When  this  message  appears,  just 
press  CTRL-BREAK  on  the  PC  or 
Fn-B  on  the  PCjr.  Another  DOS 
message  asks  if  you  want  to  termi- 
nate the  batch  job.  Answer  yes.  The 
backup  process  is  now  complete, 
(Table  2  shows  the  screen  messages 
and  responses  that  should  appear 
during  this  phase.) 

Additional  Tips 

If  you  have  another  BASIC  pro- 
gram in  memory  before  running 


Filecopy,  remember  to  save  it  on 
disk.  Otherwise  it  will  be  replaced 
when  you  load  and  run  Filecopy. 

Filecopy  works  with  all  ver- 
sions of  DOS,  but  subdirectories  are 
supported  only  in  DOS  2,1  or  high- 
er. Do  not  specify  directory  changes 
in  the  target  or  source  paths  if 
you're  using  an  earlier  version  of 
DOS, 

If  you  have  two  drives  and 
generally  use  the  first  drive  for  the 
DOS  disk  and  the  second  for  your 
programming  disk,  change  the  first 
statement  in  line  100  from 
P$  =  "A:"  to  P$  =  "B:".  This  lets 
you  keep  the  source  disk  in  drive  B 
and  put  the  target  disk  in  drive  A. 

IBM  Filecopy 

Please  refer  to  "COWPUTEI's  Guide  to  Typing 
In  Programs"  before  entering  this  listing. 

KG  10  SCREEN  0:  WIDTH  80:  COLOR  7, 
0 

CF  20  CLS: PRINT  "Insert  source  d 
isk  in  drive  A  and  hit  any 
key  to  continue" 

«H  30  GOSUB  700:  A*=INPUT*<1) 

IW  40  FILES 

K  50  PRINT: INPUT  "Enter  directo 
ry  change  (N=IMane>  >  ",DIR 
« 

CS  60  IF  DIR«="N"  DR  DIR*="n"  TH 
EN  100 

CH  70  ON  ERROR  GDTD  720 

DK  B0  CHDIR  DIR* 

HP  90  ON  ERROR  GOTO  0:GOTO  40 

DL  100  P»="A:  "sBDSUB  420:  CLS 

LF  110  '»»»  get  target  path  «»* 

SO  120  INPUT  "Target  path>  ",PAT 
H« 

!ft  130  IF  PATH*="B! "  OR  PATH«="b 
s"  DR  PATH*="fl:"  DR  PATH* 
="as"  OR  PftTH«=""  THEN  19 
0 

EK  140  PRINT:  INPUT  "Do  you  want 
to  craatB  this  directory 
on  the  target  disk  (Y/N) 
",A«:IF  A*="N"  OR  fl«="n" 
THEN  190  ELSE  IF  A*<>"Y" 
AND  A«<>"y"  THEN  140 

FI  150  ON  ERROR  GOTO  730 

FB  160  MKDIR  PATH* :  PRINT:PRINT:  P 
RINT 

DP  170  'ttt  get  files  to  copy  tt 
t 

OK  180  ON  ERROR  GOTO  0 


August  1935  COMPUTEI  83 


CK  190 

FDR  Z=0  TO  FILENUM 

m 

390 

•»«»  BntBr  DOS  «»* 

£A 

570 

NEXT  21, Z 

EE  200 

PRINT  "COPY>   ";FILE»(Z); 

HN 

400 

CLS: SYSTEM 

m 

580 

ERASE  TEM* : F I LENUM=F I LENU 

TAB(24)S"7"i ! COLOR  31,0 

Ml 

410 

't»t  directary  read  in  ar 

M-1 

HN  210 

GOSUB  700 

ray  FILE*  t«» 

EN 

590 

DEF  SEG 

m   220 

At=INPUT«(l) : IF  ft«<>"Y"  fl 

IK 

420 

DEF  SEG=0 

DF 

600 

' tt>  remove  spaces  from  f 

ND  A«<>"y"  AND  A»<>"N"  AN 

DK 

430 

CLS: COLOR  31 , 0: PRINT"One 

il  an  Bine  tt* 

D  A«<>"n"  THEN  220 

morn«nt  plaa»" 

BP 

610 

FDR  Z=0  TO  FILENUM 

LC  230 

PRINT  SPC<2) ;A«: COLOR  7,0 

Lft 

440 

COLOR  7,0!DN  ERROR  GOTO  4 

CK 

620 

A*=""!PERIOD=0 

DJ  240 

IF  A»="Y"  OR  A«="y"  THEN 

60 

U 

630 

FOR  Zl=l  TO  17 

TY(Z)=1  ELSE  TY(Z)-0 

» 

450 

FILES  P«rDN  ERROR  GOTO  0s 

EA 

640 

IF  «ID*(FILE«(Z),Z1,1)=" 

IK  250 

NEXT  Z 

SOTO  470 

"  THEN  660  ELSE  IF  MID*(F 

GO  260 

INPUT  "Is  this  all  okay  ( 
Y/N>  ";A« 

m 

460 

BEEP ! COLOR  3 1 : CLS : PR INT " C 
annot  r>ad  directory" ; COL 

ILE»(Z),Z1,1)»="."  THEN  PE 
RIOD-1 

Dfi  270 

IF  A*="N"  DR  AS="n"  THEN 

OR  7 1  ON  ERROR  GOTO  0:END 

LM 

650 

A*-A*+MID*(FILE*(Z>,Z1, 1) 

CLSiBOTO  190 

ti 

470 

DIM  TEM* (48) ! LOCATE  3,1:C 

CN 

660 

NEXT  Zl 

NF  280 

IF  A«<>"Y"  AND  A*<>"y"  TH 

OLOR  7tROWS-0 

EB 

670 

FILE*(Z)=A*!lF  PERIDD=0  T 

EN  260 

Ll 

480 

POKE  1050, 30s  POKE  1052,34 

HEN  FILE»(Z)-FILE«(Z)+". " 

LC  290 

'***  batch  -file  creation 

sPOKE  1054, 0s  POKE  1055,79 

EO 

6S0 

NEXT  Z: RETURN 

«*t 

:POKE  1056, 13: POKE  1057,2 

DD 

690 

'ttt  clear  keyboard  bu-Ffe 

PF  300 

OPEN  "FILECOPY.BAT"  FOR  0 

5 

r  ttt 

UTPUT  AS  »1 

II 

490 

LINE  INPUT  TEMXROWS) 

FL 

700 

DEF  SEG»0sPDKE  1050, PEEK ( 

BJ  310 

PRINT  #1, "VERIFY  ON" 

P6 

500 

IF  TEM* (ROWS) <>""  THEN  RO 

1052)1  RETURN 

eO  320 

FOR  Z=0  TO  FILENUM 

WS-=ROWS+lieOT0  480 

m 

710 

'ttt  error  messages  ttt 

IH  330 

IF  TY<Z>=0  THEN  350 

DE 

510 

DIM  FILE*(ROWS«4-l),TY<RO 

B1I 

720 

BEEP! COLOR  31,0: PRINT  "Di 

HO  340 

PRINT  «1,"C0PY  "jFILEKZ) 

MSt4-l) 

rectory  does  not  exist": C 

1"  "jPATH* 

HE 

520 

RaWS=ROWS-l 

OLOR  7, 01  RESUME  50 

111  350 

NEXT  Z 

a 

530 

FOR  Z-0  TO  ROWS 

m 

730 

BEEPsCDLDR  31 , 0! PRINT: PRI 

DD  360 

PRINT  «1,"REM  ••«  COPY  CD 

K 

540 

FOR  Z1=0  TO  3 

NT: PRINT  "Cannot  create  d 

MPLETE" 

OE 

550 

T»=MID» (TEM* ( Z> , Z 1  *  1 B+1 ,  1 

irectory  —  reenter  path" 

66  370 

PRINT  #1, "ERASE  FILECOPY. 

7) 

I  COLOR  7, 01  RESUME  120   @ 

BAT" 

ID 

560 

IF  T*<>""  THEN  FILE* (FILE 

«F  380 

CLOSE  »1 

NUM )-T»!FILENUM=FI LENUM+ 1 

Apple  Text  Windows 


If  you  use  an  Apple  //-series  com- 
puter, you  may  have  cast  longing  eyes 
at  the  flashy  windowing  capabilities 
of  the  Macintosh.  What  you  may  not 
realize  is  that  the  Apple  II  has  a  built- 
in  windowing  feature  of  its  own— the 
text  window.  The  following  tech- 
niques work  on  any  Apple  Il-series 
computer  with  at  least  i8K  RAM. 


While  it's  difficult  for  an  Apple  II- 
series  computer  to  emulate  the  slick 
graphics  of  the  Macintosh,  the  Apple 
II  does  have  a  simple  windowing 
capability  known  as  the  text  win- 
dow. Basically,  a  text  window  is  a 
section  on  a  low-  or  high-resolution 
graphics  screen  where  text  can  be 
printed.  The  text  window  is  easily 
controlled,  too. 

You're  probably  already  famil- 


Daniel  L.  Joynt 


iar  with  some  aspects  of  the  Apple 
II  text  window.  When  the  computer 
is  in  text  mode,  in  effect  the  text 
window  covers  the  entire  screen — 
you  can  print  characters  wherever 
you  like.  In  graphics  modes,  the 
text  window  is  confined  to  four 
lines  at  the  bottom  of  the  screen. 
When  the  four-line  window  fills  up, 
text  scrolls  off  the  top  of  the  win- 
dow to  make  room  for  new  text  at 
the  bottom.  Ordinarily  the  com- 
puter manages  the  text  window 
automatically.  However,  with  a  few 
simple  POKEs  you  can  manipulate 
the  text  window  on  your  own — 
controlling  its  size  and  screen 
location. 

To  see  a  demonstration  of  four 
different  text  windows,  type  in, 
save,  and  run  Program  1.  To  add 
windowing   to   your   own   BASIC 


programs,  you  can  use  the  subrou- 
tine in  Program  2  (see  instructions 

below). 

Open  Your  Own  Windows 

As  you  know,  the  Apple  text  screen 
is  40  columns  wide  and  24  rows 
tall.  Any  screen  location  can  be  de- 
fined in  terms  of  an  X  (column) 
coordinate  and  a  Y  (row)  coordi- 
nate. X  coordinates  range  from  0 
(far  left)  to  39  (far  right).  Y  coordi- 
nates range  from  0  (top)  to  23 
(bottom). 

The  Apple  text  window  is  con- 
trolled with  four  memory  locations 
at  decimal  addresses  32,  33,  34,  and 
35.  By  POKEing  values  in  these 
locations,  you  can  set  the  bound- 
aries of  the  window  anywhere  on 
the  screen.  Location  32  defines  the 
left  boundary  of  the  text  window;  it 


84     COMPUTEI      August  1965 


takes  any  value  from  0-39,  corre- 
sponding to  X  coordinate  values. 
Location  33  defines  the  maximum 
length  of  text  lines  inside  the  win- 
dow, which  effectively  sets  the 
right  boundary;  it  accepts  any  value 
from  1-40. 

Memory  location  34  defines 
the  top  boundary  of  the  text  win- 
dow. It  takes  any  value  from  0-23, 
corresponding  to  Y  coordinates.  Lo- 
cation 35  defines  the  window's  bot- 
tom boundary;  it  accepts  values 
from  1-24,  where  24  is  the  bottom 
row  of  the  screen. 

To  keep  a  program  from  crash- 
ing, you  must  keep  all  the  bound- 
aries on  the  screen.  For  instance, 
the  values  in  locations  32  and  33 
when  added  together  must  not  ex- 
ceed 40.  Otherwise,  the  right 
boundary  would  be  off  the  screen. 
Illogical  configurations — such  as 
setting  the  top  boundary  below  the 
bottom  boundary — also  cause  a 
crash. 

Give  The  Cursor  A  Home 

Once  the  window  is  opened,  you'll 
want  to  fill  it  with  text.  Unfortu- 
nately, resetting  locations  32-35 
does  not  automatically  relocate  the 
cursor  inside  the  new  window.  The 
HOME  command  sends  the  cursor 
to  the  upper-left  corner,  but  also 
erases  everything  inside  the  win- 
dow. To  move  the  cursor  less  de- 
structively, you  can  use  the  HTAB 
and  VTAB  commands. 

HTAB  and  VTAB  set  the  screen 
location  where  all  following  text 
will  be  printed.  HTAB  moves  the 
text  pointer  to  a  specified  column 
(1-40),  and  VTAB  moves  the  text 
pointer  to  the  designated  row 
(1-24).  Note  that  HTAB  and  VTAB 
act  differently  when  used  outside  of 
a  text  window. 

An  Easy  Window  Routine 

Program  2  is  a  subroutine  that  cre- 
ates a  text  window  of  any  size  and 
shape  and  even  surrounds  it  with  a 
border  if  you  like.  It  uses  line  num- 
bers 10000-10070,  but  you  can  re- 
number the  lines  when  adding  the 
routine  to  your  own  programs. 
Note  that  this  is  a  subroutine,  not  a 
complete  program;  certain  steps 
must  be  followed  when  using  the 
routine  after  it  has  been  added  to 
another  program. 


Before  calling  the  subroutine 
with  GOSUB  10000,  you  must  give 
each  of  the  following  variables  a 
value  within  the  range  indicated.  In 
addition  to  setting  these  variables, 
your  program  should  not  use  the 
variables  WX  and  WY,  which  the 
routine  uses  to  draw  borders. 


Variable 

Range 

WL 

2-39 

WR 

2-39 

WT 

2-22 

WB 

2-22 

ws 

any  single 

character 

WI 

0-2 

Line  10000  resets  the  text  win- 
dow to  the  size  of  the  entire  screen. 
This  insures  that  HTAB  and  VTAB 
place  the  border  properly.  In  lines 
10010-10030  the  variable  WI  de- 
fines the  print  mode  of  the  border. 
A  value  of  0  maintains  NORMAL 
mode,  1  sets  the  mode  to  INVERSE, 
and  2  sets  it  to  FLASH. 

The  variable  W$  defines  the 
character  used  for  the  border,  which 
is  drawn  in  lines  10040-10050.  If 
you  don't  want  a  border,  define  W$ 
as  a  null  string  (W$  =  "").  Line 
10060  locates  the  new  text  window, 
setting  the  left,  right,  top,  and  bot- 
tom boundaries  with  the  variables 
WL,  WR,  WT,  and  WB,  respective- 
ly. Note  that  the  left  and  right 
boundaries  (WL  and  WR)  must  be 
in  the  range  2-39  to  allow  room  for 
a  border.  For  the  same  reason,  WT 
and  WB  (top  and  bottom  bound- 
aries) should  be  in  the  range  2-22. 
Once  the  window  is  defined,  line 
10070  resets  the  Apple  to  NORMAL 
mode,  clears  the  inside  of  the  new 
text  window,  and  ends  the  routine. 


Program  1 :  Window 
Demonstration 

29  100  TEXT 

4i  110  HOHE 

Fl  120  REM  —  DRAW  MENU  WINDOW 

F7  130  WL  =  101  WR  =  30:  WT  =  SsWB 

"   isiw*  =  "ftm   =  0 

D(  140  GOSUB  10000 

EA  150  PRINT 

Fl  160  PRINT  TAB<  4)  j  "="==  MENU 

kC  170  PRINT  !  PRINT 

I?  180  FDR  Y  =  1  TO  4 

H    190    PRINT    TflB(    4)jYi"-    MINOOW 

("j     CHR»     (64    +    Y) I ">" 
E4  200    NEXT    Y 

C»  210  PRINT  !  PRINT  :  PRINT 
a   220  PRINT  "CHOOSE  WINDOW  (1-4 

>"( 
DA  230  GET  Y» 
DD  240  IF  Y«  <  "1"  OR  Y«  >  "4"  T 

HEN  GOTO  100 


i<)   250  U  =  VflL  (Y«) 

U   260  ON  W  BQ5UB  1000,2000,3000 


EC  270  FDR  Z  =  1  TO  1000:  NEXT  Z 

1?  2B0  LIST 

57  290  HOME 

BF  300  PRINT  :  PRINT  !  PRINT 

til  310  PRINT  TAB(  3)  ("WINDOW  ("; 

CHR»  (64  +  W>t") " 
E3  320  FOR  Z  =  1  TO  1000:  NEXT  Z 
U   330  REM  —  DRAW  RETURN  WINDOW 
n   340  WL  =  6:WR  -  34: WT  =  12: WB 

'  12>W»  '  CHR«  (32)lWt  • 

1 
D4  3S0  GOSUB  10000 
62  360  PRINT  TAB(  5);  "PLEASE  PRE 

SS  ANY  KEY"i 
E3  370  GET  Y* 
!F  3B0  GOTO  130 

C6  1000  REM  —  DRAW  WINDOW  (A) 
FA  1010  WL  =  2jWR  =  ISsWT  =  2:MB 

>■  BiM*  -  CHR«  (32)lWI  > 

1 
A?  1020  GOSUB  10000 
DD  1030  RETURN 

D9  2000  REM  —  DRAW  WINDOW  (B) 
3E  2010  WL  =  26:  WR  =  39:  WT  =  2sW 

B  -  SiW*  =    "1"«WI  -  1 
4A  2020  GD5UB  10000 
DE  2030  RETURN 

EA  3000  REM  —  DRAW  WINDOW  (C) 
SS  3010  WL  =  2:UR  =  15iWT  =    16iW 

a  •  22tW«  •  "3"iWI  -  0 
4B  3020  BOSUB  10000 
DF  3030  RETURN 

FB  4000  REM  —  DRAW  WINDOW  (D) 
'4  4010  WL  =  26:  WR  =  39:  WT  =  16s 

WB  =  22:  W*  =  "■i-";WI  -  1 
K   4020  GOSUB  10000 
El  4030  RETURN 
B4  10000  POKE  32,0:  POKE  33,40: 

POKE  34,01  POKE  35,24 
DB  10010  IF  WI  =  0  THEN  NORMAL 
FD  10020  IF  WI  =  1  THEN  INVERSE 
4E  10030  IF  WI  =  2  THEN  FLASH 
B9  10040  FOR  WY  =  WT  -  1  TO  WB  + 

1:  VTAB  WYi  HTAB  WL  - 
li  PRINT  W«|i  HTAB  WR  + 

U  PRINT  W«)i  NEXT 
C9  10050  FOR  WX  =  WL  TO  WR:  VTAB 

WT  -  It  HTAB  WXi  PRINT 

W«|i  VTAB  WB  +  ll  HTAB 

WXl  PRINT  W«|i  NEXT 
if    10060  POKE  32,  WL  -  Is  POKE  33 
,WR  -  WL  +  ll  POKE  34, W 
T  -  ll  POKE  35, WB 
1h    10070  NORMAL  s  HOME  .  RETURN 


Program  2:  Window 
Subroutine 

B4  10000  POKE  32,01  POKE  33,401 

POKE  34,01  POKE  33,24 
DB  10010  IF  MI  -  0  THEN  NORMAL 
FO  10020  IF  WI  -  1  THEN  INVERSE 
K    10030  IF  WI  -  2  THEN  FLASH 
SI    10040  FOR  WY  =  WT  -  1  TO  WB  + 
ll  VTAB  WYi  HTAB  WL  - 
ll  PRINT  W«|i  HTAB  WR  + 
ll  PRINT  W«| I  NEXT 
C9  10030  FOR  WX  =  WL  TO  WRi  VTAB 
WT  -  ll  HTAB  WXl  PRINT 
W«|i  VTAB  WB  ■«■  ll  HTAB 
WXl  PRINT  W«|i  NEXT 
4F  10060  POKE  32,  WL  -  1:  POKE  33 
,WR  -  WL  +  ll  POKE  34, W 
T  -  li  POKE  35, WB 
%  10070  NORMAL  I  HOME  :  RETURN 


August  1985  COMPUTEI   85 


COMPUTErs  Guide 

To  Typing  in  Programs 


Before  typing  in  any  progran\,  you 
should  familiarize  yourself  with  your 
computer.  Learn  how  to  use  the  key- 
board to  type  in  and  correct  BASIC 
programs.  Read  your  manuals  to  un- 
derstand how  to  save  and  load  BASIC 
programs  to  and  from  your  disk  drive  or 
cassette  unit.  Computers  are  precise — 
take  special  care  to  type  the  program 
exactly  as  listed,  including  any  neces- 
sary punctuation  and  symbols,  except 
for  special  characters  as  noted  below. 
To  help  you  with  this  task,  we  have 
implemented  a  special  listing  conven- 
tion as  well  as  a  program  to  help  check 
your  typing — the  "Automatic  Proof- 
reader." Please  read  the  following 
notes  before  typing  in  any  programs 
from  COMPUTE!.  They  can  save  you  a  lot 
of  time  and  trouble. 

Commodore,  Apple,  and  Atari 
programs  can  contain  some  hard-to- 
read  (and  hard-to-type)  special  charac- 
ters, so  we  have  developed  a  listing 
system  that  indicates  the  function  of 
these  control  characters.  (There  are  no 
special  control  characters  in  our  IBM  or 
TI-99/4A  listings.)  You  will  find  Com- 
modore and  Atari  special  characters 
within  curly  braces;  do  not  type  the  brac- 
es. For  example,  {CLEAR}  or  {CLR} 
instructs  you  to  insert  the  symbol 
which  clears  the  screen  on  the  Atari  or 
Commodore  machines.  For  Commo- 
dore, Apple,  and  Atari,  a  symbol  by 
itself  within  curly  braces  is  usually  a 
control  key  or  graphics  key.  If  you  see 
{A},  hold  down  the  CTRL  key  and 
press  A.  This  will  produce  a  reverse 
video  character  on  the  Commodore  (in 
quote  mode),  a  graphics  character  on 
the  Atari,  and  an  invisible  control  char- 
acter on  the  Apple.  Commodore  com- 
puters also  have  a  special  control  key 
labeled  with  the  Commodore  logo. 
Graphics  characters  entered  with  the 
Commodore  logo  key  are  enclosed  in  a 
special  bracket  that  looks  like  this: 
fciA::^.  In  this  case,  you  would  hold 
down  the  Commodore  logo  key  as  you 
type  A.  Our  Commodore  listings  are  in 
uppercase,  so  shifted  symbols  are  un- 
derlined. A  graphics  heart  symbol 
(SHIFT'S)  would  be  listed  as  S.  One 
exception  is  {SHIFT-SPACE}.  When 
you  see  this,  hold  down  SHIFT  and 
press  the  space  bar.  If  a  number  pre- 
cedes a  symbol,  such  as  (5  RIGHT},  {6 


S},  or  [<8  Q>],  you  would  enter  five 
cursor  rights,  six  shifted  S's,  or  eight 
Commodore-Q's.  On  the  Atari,  inverse 
characters  (printed  in  white  on  black) 
should  be  entered  after  pressing  the 
inverse  video  key. 

Since  spacing  is  sometimes  impor- 
tant, any  more  than  two  spaces  will  be 


listed.  For  example,  {6  SPACES}  means 
to  press  the  space  bar  six  times.  Our 
listings  never  leave  a  space  at  the  end  of 
a  line,  instead  moving  it  to  the  next 
printed  line  as  {SPACE}.  For  your 
convenience,  we  have  prepared  this 
quick-reference  chart  for  the  Commo- 
dore and  Atari  special  characters: 


Atari  400/800/XL/XE 


When  you  see      Type 

{CLEAR}  ESC 

{UP>  ESC 

<DDWN}  ESC 

tLEFT>  ESC 

CRIQHTJ  ESC 

{BACK  S>  ESC 

{DELETE>  ESC 

{INSERTl  ESC 

{DEL  LINE>  ESC 

CINS  LINO  ESC 

{TAB>  ESC 

{CLR  TAB>  ESC 

{SET  TAB>  esc 

{BELL>  ESC 

{ESO  ESC 


SHIFT  < 
CTRL  - 
CTRL  = 
CTRL  + 
CTRL  « 
DELETE 
CTRL  DELETE 
CTRL  INSERT 
SHIFT  DELETE 
SHIFT  INSERT 
TAB 

CTRL  TAB 
SHIFT  TAB 
CTRL  2 
ESC 


See 

■f 

■f 
* 

u 
□ 

► 
ca 

E3 


CI ear  Screen 
Cursor  Up 
Cursor  Down 
Cursor  Left 
Cursor  Right 
Backspace 
Delete  character 
Insert  character 
Delete  line 
Insert  line 
TAB  key 
Clear  tab 
Set  tab  stop 
Ring  buzzer 
ESCape  key 


Press: 


See: 


SHIFT 


CIR/HOME 


aR(HOME 


^ 


SHIFT 


t   CRSR  [ 


I  CRSR  [ 


«-  CRSR  -<■ 


■CRSR  — 


CTRL 


n 
m 


s 


Commodore  PET/CBM/VIC  64/128/16/+4 

When  >bu 
Read: 

g3g 
§4^ 

ie3 

{Fl  } 

(  R  > 
i  B  ! 
(  K  1 
{  F5) 
[H] 
{  F7} 
{  F8  } 
<« 


When  You 
Read: 

{CLR} 
{HOME) 

{UP! 

(DOWN) 

(LEFT) 

{RIGHT} 

{RVS) 

{OFF} 

{BLK} 

{WHT} 

{RED} 

{CYN) 

{FUR) 

{GRN) 

{BLU) 

{YEL) 


Press: 


See: 


COMMODORE 


[COMMODORE 


I  COMMODORE 


COMMODORE 


COMMODORE 


HE 

an 


CTRL 


COMMODORE 


■  ■ 


CTRL 

1 

CTRL 

2 

CTRL 

3 

CTRL 

4 

CTRL 

5 

CTRL 

6 

CTRL 

7 

CTRL 

i 

□ 
ca 


SHIFT 


SHIFT 


(5 

SHIFT 

fs 

f7 

SHIFT 

(7 

86     COMPUTE!     August  1985 


The  Automatic  Proofreader 

We  have  developed  a  series  of  simple, 
yet  effective  programs  that  can  help 
check  your  typing.  Type  in  the  appro- 
priate Proofreader  program  listed  be- 
low, then  save  it  for  future  use.  On  the 
VIC,  64,  or  Atari,  run  the  Proofreader  to 
activate  it,  then  enter  NEW  to  erase  the 
BASIC  loader  (the  Proofreader  remains 
active,  hidden  in  memory,  as  a  machine 
language  program).  Pressing  RUN/ 
STOP-RESTORE  or  SYSTEM  RESET 
deactivates  the  Proofreader.  You  can 
use  SYS  886  to  reactivate  the  VIC/64 
Proofreader,  or  PRINT  USR(1536)  to 
reenable  the  Atari  Proofreader.  On  the 
Apple,  the  Proofreader  automatically 
erases  the  BASIC  portion  of  itself  after 
you  activate  it  by  typing  RUN,  leaving 
only  the  machine  language  portion  in 
memory.  It  works  with  either  DOS  3.3 
or  ProDOS,  Disable  the  Apple  Proof- 
reader by  pressing  CTRL-RESET  before 
running  another  BASIC  program.  The 
IBM  Proofreader  is  a  BASIC  program 
that  simulates  the  IBM  BASIC  line  edi- 
tor, letting  you  enter,  edit,  list,  save,  and 
load  programs  that  you  type.  Type 
RUN  to  activate. 

Once  the  Proofreader  is  active,  try 
typing  in  a  line.  As  soon  as  you  press 
RETURN,  either  a  decimal  number  (on 
the  Commodore),  a  hexadecimal  num- 
ber (on*  the  Apple),  or  a  pair  of  fetters 
(on  the  Atari  or  IBM)  appears.  The 
number  or  pair  of  letters  is  called  a 
checksum.  Try  making  a  change  in  the 
line,  and  notice  how  the  checksum 
changes. 

All  you  need  to  do  is  compare  the 
value  provided  by  the  Proofreader  with 
the  checksum  printed  in  the  program 
listing  in  the  magazine.  In  Commodore 
listings,  the  checksum  is  a  number  from 
0  to  255.  It  is  set  off  from  the  rest  of  the 
line  with  rem.  This  prevents  a  syntax 
error  if  the  checksum  is  typed  in,  but 
the  REM  statements  and  checksums 
need  not  be  typed  in.  It  is  just  there  for 
your  information. 

In  Atari,  Apple,  and  IBM  listings, 
the  checksum  is  given  to  the  left  of  each 
line  number.  Just  type  in  the  program 
one  line  at  a  time  (without  the  printed 
checksum)  and  compare  the  checksum 
generated  by  the  Proofreader  to  the 
checksum  in  the  listing.  If  they  match, 
go  on  to  the  next  line.  If  not,  check  your 
typing:  You've  made  a  mistake.  On  the 
Commodore,  Atari,  and  Apple  Proof- 
readers, spaces  are  not  counted  as  part 
of  the  checksum,  so  be  sure  you  type 
the  right  number  of  spaces  between 
quote  marks.  The  Commodore  and 
Atari  Proofreaders  do  not  check  to  see 
that  you've  typed  the  characters  in  the 
right  order,  so  if  characters  are  trans- 
posed, the  checksum  still  matches  the 
listing.  Because  of  the  checksum  meth- 


od used,  do  not  type  abbreviations, 
such  as  ?  for  PRINT,  The  IBM  Proof- 
reader is  the  pickiest  of  all;  it  will  detect 
errors  in  spacing  and  transposition.  Be 
sure  to  leave  Caps  Lock  on,  except 
when  typing  lowercase  characters. 

IBM  Proofreader  Commands 

Since  the  IBM  Proofreader  replaces  the 
computer's  normal  BASIC  line  editor,  it 
has  to  include  many  of  the  direct-mode 
IBM  BASIC  commands.  The  syntax  is 
identical  to  IBM  BASIC.  Commands 
simulated  are  LIST,  LLIST,  NEW, 
FILES,  SAVE,  and  LOAD.  When  listing 
your  program,  press  any  key  (except 
Ctrl-Break)  to  stop  the  listing.  If  you 
type  NEW,  the  Proofreader  prompts 
you  to  press  Y  to  be  sure  you  mean  yes. 
Two  new  commands  are  BASIC 
and  CHECK.  BASIC  exits  the  Proof- 
reader back  to  IBM  BASIC,  leaving  the 
Proofreader  in  memory.  CHECK  works 
just  like  LIST,  but  shows  the  checksums 
along  with  the  listing.  After  you  have 
typed  in  a  program,  save  it  to  disk. 
Then  exit  the  Proofreader  with  the 
BASIC  command,  and  load  the  pro- 
gram in  BASIC  as  usual  (this  replaces 
the  Proofreader  in  memory).  You  can 
now  run  the  program,  but  you  may 
want  to  resave  it  to  disk.  The  version  of 
your  program  that  you  resave  from 
BASIC  will  take  up  less  space  on  disk 
and  will  load  faster,  but  it  can  no  longer 
be  edited  with  the  Proofreader.  If  you 
want  to  convert  a  program  to  Proof- 
reader format,  save  it  to  disk  with  SAVE 
"filename",A. 

Special  Proofreader  Notes 
For  Commodore  Cassette 
Users 

The  Proofreader  resides  in  a  section  of 
memory  called  the  cassette  buffer, 
which  is  used  during  tape  LOADs  and 
SAVEs.  Therefore,  be  sure  to  press 
RUN/STOP-RESTORE  to  get  the  Proof- 
reader out  of  the  way  before  saving  or 
loading  a  program.  If  you  want  to  use 
the  Proofreader  vrith  tape,  run  the 
Proofreader,  then  enter  these  two  lines 
exactly  as  shown,  pressing  RETURN 
after  each  one: 

A$ = "PROOFRE  ADER.T":B$ = "{ 10 
SPACES}":FOR  X  =  l  TO  4:A$  =  A$ 
+  B$:NEXT 

FOR  X  =  886  TO  1018:A$=A$  +  CHR$ 
(PEEK(X)):NEXT:OPEN  1,1,1,A$: 
CLOSEl 

Then  insert  a  blank  tape  and  press  RE- 
CORD and  PLAY  to  save  a  special  ver- 
sion of  the  Proofreader.  Anytime  you 
need  to  reload  the  Proofreader  after  it 
has  been  erased — for  example,  after 
you  reload  a  paritally  completed  pro- 
gram— just  rewind  the  tape,  type 
0PEN1:CL0SE1,  then  press  PLAY. 


You'll  see  the  message  FOUND 
PROOFREADER.T,  but  not  the  familiar 
LOADING  message.  Don't  worry;  the 
Proofreader  is  in  memory.  When 
READY  comes  back,  enter  SYS  886. 


Program  1:  vic/64 
Proofreader 

By  Charles  Brannon,  Program  Editor 

10  PRIHT"(CLR} PLEASE  WAIT..."* 

FORI=886TO1018 ! READAtCK=CK+ 

A:POKEI,A:NEXT 
20  IF  CK<> 17539  THEN  PRINT" 

(down} YOU  MADE  AN  ERROR": PR 

INT "IN  DATA  STATEMENTS. ": EN 

D 
30  SYS886:PRINT"{CLR] (2  DOWNiP 

ROOFREADER  ACTIVATED. ": NEW 
40  DATA  17  3,036,003,201,150,20 

8,001,096,141,151,003,173 
50  DATA  037,003,141,152,003,16 

9,150,141,036,003,169,003 
60  DATA  141,037,003,169,000,13 

3,254,096,032,087,241,133 
70  DATA  251,134,252,132,253,00 

8,201,013,240,017,201,032 
80  DATA  240,005,024,101,254,13 

3,254,165,251,166,252,164 
90  DATA  253,040,096,169,013,03 

2,210,255,165,214,141,251 
100  DATA  003,206,2  51,003,169,0 
00,133,216,169,019,032,210 
110  DATA  255,169,018,032,210,2 

55,169,58,032,210,255,166 

120  DATA  254,169,000,133,254,1 

72 , 151 , 003 , 1 92 , 087 , 208 , 006 

130  DATA  032,205,189,076,235,0 

03,032,205,221,169,032,032 

140  DATA  210,255,032,210,255,1 

73,251,003,133,214,076,173 

150  DATA  003 


Program  2:  Atari 
Proofreader 

By  Charles  Brannon,  Program  Editor 


100 

1 10 


120 


130 
140 


190 
160 

170 

180 

190 

200 

210 


QRAPHIC8  0 

FOR  I- 1336  TO  17001  RE 

AD  A) POKE  I,ftiCK-CK+A 

iNEXT  I 

IF  CKO19072  THEN  ?  " 

Error  In  DATA  Statame 

nta.       Ctiack    Typing. "i 

END 

A-uaR( 1S36) 

7  I?  "Automatic  Proof 

rmmdmr    Nom  Activatad. 


END 

DATA 

,3,20 

DATA 

08,24 

DATA 

,6, IS 

DATA 

74,6, 

DATA 

41,78 

DATA 

8,  109 


104, 16 
1,69,2 
200,20 

13,96,2 
133,26 

S3, 26, 3 
0, 189, 
232,22 
208,24 

t,6,  169 

79,6,2 

1,141 


0,0, 185,26 

40,7 

0, 192,34,2 

00, 169,74 

,3,200, 169 

,  162 

0,228, 157, 

4,  16 

S, 169,93, 1 

,6, 141 

4,  173,4, 22 

,93 


August  19B5     COMPUTE)      87 


220  DATA  6, 173,5, 22B, 103, 

0.  141,96,6, 169 
230  DATA  0,133,203,96,247 

.236, 123,241,93,6 
240  DATA  244,241,113,241, 

124,241,76,209,236 
250  DATA  0,0,0,0,0,32,62, 

246,6,201 
260  DATA  139,240,13,201,3 

2,240,7,72,24, 101 
270  DATA  203,133,203,104, 

40,96,72, 152,72, 1  SB 
260  DATA  72,160,0,169,128 

, 145, 88,200, 192,40 
290  DATA  206,249,165,203, 

74,74,74,74,24, 105 
300  DATA  161,160,3,145,66 

, 165,203, 41, 15, 24 
310  DATA  105,161,200,145, 

8B, 169,0, 133,203, 104 
320  DATA  170,104,168,104, 

40,96 


Program  3:  IBM  Proofreader 

By  Charles  Brannon,  Program  Editor 

10  'Automatic  Proofreader  Ver 

sion  2.00  (Lines  270,510,5 

15,517,620,630  changed  -fro 

ID  VI. 0) 

100  DIM  L*(500) ,LNUM(500) :CDL 

OR  0,7, 7! KEY  OFFiCLS:MftX= 

0:LNUhl(0)  =65536! 
110  DN  ERROR  GOTO  1 20: KEY  15, 

CHR«(4)+CHR*(70)sON  KEYd 

5)  80SUB  640: KEY  (15)  GN: 

GOTO  130 
120  RESUME  130 

130  DEF  SEG=*iH40:W=PEEK(t<H4A) 
140  DN  ERROR  GOTO  650: PRINT: P 

RINT"Proo-f reader  Ready.  " 
150  LINE  INPUT  L«: Y=CSRLIN-IN 

T(LEN<L»}/W) -I: LOCATE  Y, I 
160  DEF  SEG=0:PaKE  1050, 30: PD 

KE  1052, 34! POKE  1054, 0!PO 

KE  1055, 79: POKE  1056, 13: P 

DKE  1057, 28: LINE  INPUT  L$ 

:DEF  SESiIF  L«=""  THEN  15 

0 
170  IF  LeFT«(L«,l)  =  "  ■■  THEN  L 

«=MID«{L*,2) sGOTD  170 
iB0  IF  VflL(LEFTt(L*,2) )=0  AND 
MID* <L*, 3,1)="  "  THEN  L* 

=MID«<L»,4) 
190  LNUM=VAL(L*):TEXT*=M1D*(L 

«,LEN<BTRt(LNUM) )+l) 
200  IF  AaC(L»)>57  THEN  260  'n 

o  line  number,  there-fore 

camoiand 
210  IF  TEXT«=""  THEN  GQSUB  54 

0s  IF  LNUM=LNUM(P)  THEN  GO 

SUB  560: GOTO  150  ELSE  150 
220  CKSUM=0:FDR  1=1  TO  LEN(Lt 

) ! CKSUM= ( CKSUM+ ASC ( M I D« ( L 

*,I))«I)  AND  255: NEXT: LOG 

ATE  Y, Is  PRINT  CHR* (65+CKS 

Ut1/16)+CHR4(65+(CKSUM  AND 
15))+"  "+L* 
230  GDSUB  340: IF  LNUMCP)=LNUM 
THEN  L«(P)=TEXT«:GOTO  15 

0    'replace  line 
240  GDSUB  580: SOTO  150  ' i nser 

t  the  line 
260  TEXTS="":FOR  1=1  TO  LENtL 

*) s  A=fiSC (MID* (L*, I ) ) : TEXT 

«=TEXT«+CHR«(A+32t(A>96  A 

ND  A<123) ) :NEXT 


270 


280 
290 
300 
310 

320 

330 

340 
350 
360 


370 
380 
390 
400 
410 


420 
430 
440 

450 
460 
470 


480 
490 


500 

510 

SIS 

517 
520 


DELIM1TER=INBTR(TEXT«,"  " 

) r  CaMMAND*=TEXT» : ARQ»= 

IF  DELIMITER  THEN  COMMAND 

t=LEFT«(TEXT«,DELIMIT£R-l 

>  !  flRB*=-MID*  (TEXT*,  DELIMIT 

ER+1)  ELSE  DELIM1TER=INST 

R(TEXT«,CHR*{34) ) : IF  DELI 

MITER  THEN  COMWAND»=LEFT» 

(TEXT*,DELIMITER-1)!ARG«= 

MID* (TEXT*, DELIMITER) 

IF  COMMAND*<>"LIST"  THEN 

410 

□PEN  "scrns"  FOR  OUTPUT  A 

S  ttl 

IF  fiRG*=""  THEN  FIRST=0:P 

=MAX-1:GDT0  340 

DEL I M I TER= I NSTR ( ARG* , " - " ) 

s IF  DELIMITER=0  THEN  LNUM 

=VAL(ARG«}:GaSUB  540:FIRS 

T=P:GOTO  340 

FIRST=VAL(LEFT»(ftRG*,DELI 

MITER))sLAST=VAL(MID«(ARG 

«,DELIMITER+1)) 

LNUM=FIRST:GOSUB  540: FIRS 

T=P:LNUM=LAST5  0OSUB  540!  I 

F  P=0  THEN  P=MAX-1 

FDR  X=FIRST  TO  P:N«=MID»( 

STR*(LNUM(X) ) ,2)+"  " 

IF  CKFLAG=0  THEN  A«="":GO 

TD  370 

CKSUM=0!A*=Nt+L«(X):FOR  I 

-1  TD  LENIA*) :CKSUM=(CKSU 

M+A5C(MID*(A*, I>) tl)  AND 

255s  NEXT: A*=CHR* (65+CKSUM 

/16)+CHR*(6a+(CKSUM  AND  1 

5))+"  " 

PRINT  «1,AS+N»+L*<X) 

IF  1NKEV*<>""  THEN  X=P 

NEXT  : CLOSE  »lsCKFLAG=0 

GOTO  130 

IF  CDMMAND»="LLIST"  THEN 

OPEN  "Iptll"  FOR  OUTPUT  A 

S  *lsSDTD  300 

IF  COMMAND«=" CHECK"  THEN 

CKFLAG=1:GDT0  290 

IF  COMMAND*<>"SAVE"  THEN 

450 

GOSUB  6005  OPEN  ARE*  FDR  0 

UTPUT  AS  #l!ARG*=""sGOTD 

300 

IF  CDMMAND*<>"LOAD"  THEN 

490 

GOSUB  600! OPEN  ARG*  FOR  I 

NPUT  AS  *l;MAX=0!P=a 

WHILE  NOT  E0F(1):LINE  INP 

UT  •1,L*3LNUM(P)=VAL(L*); 

L«  (P)  =MID»  (L«,  LEN  dsiRt  (VA 

L(L*) ) )+l) !P=P+lsWEND 

MAX=P: CLOSE  WlsGOTO  130 

IF  CDMMAND*="NEU"  THEN  IN 

PUT  "Erase  program  -  Are 

you  surB";L«!lF  LEFT«(L«, 

l)-"y"  OR  LEFT«(L«, 1)="Y" 

THEN  MAX=08GOTQ  1308ELSE 

130 
IF  COMMAND*="BASIC"  THEN 
COLOR  7, 0,0: ON  ERROR  GOTO 

03CLS:END 
IF  COMMAND«<>"FILES"  THEN 

520 
IF  ARG«=""  THEN  ARG»="A:  •' 

ELSE  SEL^'ls  GOSUB  600 
FILES  ARG* ! GOTO  130 
PR I  NT "Syntax  error "sBOTO 
130 


540  P=0: WHILE  LNUM>LNUM(P)  AN 
D  P<MAX!P-P+l«WENDsRF-TURN 

560  MAX=MAX-lsFOR  X=P  TD  MAX: 
LNUM(X)-LNUM(X+l)iL*(X)=L 
*(X+1> I NEXTs RETURN 

580  MAX=MAX+l!FOR  X=MAX  TO  P+ 
1  STEP  -1 s LNUM (X) -LNUM ( X- 
l)lL«(X)-L«(X-l)tNEXTlL«( 
P ) -TEXT* : LNUM ( P ) -LNUM  t RET 
URN 

600  IF  LEFT«(ARG*,1)<>CHR*(34 
)  THEN  520  ELSE  AR6«-MID« 
(ARG*,2> 

610  IF  RIGHT* (ARG*, 1>=CHR* (34 
)  THEN  ARB«-LEFT«(ARB*,LE 
N(ARG*)-1> 

620  IF  SEL=0  AND  INSTRCARB*," 
.")-0  THEN  ARQ*-ARB»+".BA 

630  SEL-=0:  RETURN 

640  CLOSE  #lsCKFLAG=0!PRINT"S 

topped. "I  RETURN  150 
650  PRINT  "Error  #"jERRiRESUM 

E  1S0 


Program  4:  Apple 
Proofreader 

By  Tim  Victor,  Editorial 
Programmer 


768  TD  768  + 
C  +  As  POKE  I 


10  C  =  0:  FOR  I 

68:  READ  A:C 

,ft!  NEXT 
20  IF  C  <  >  7258  THEN  PRINT  "ER 

ROR  IN  PROOFREADER  DATA  STAT 

EMENTS"!  END 
30  IF  PEEK  (190  «  256)  <  >  76  T 

HEN  POKE  56,0!  POKE  57,3:  CA 

LL  1002s  GOTO  50 
40  PRINT  CHR*  (4) ; "IN«A*300" 
50  POKE  34,0;  HOME  s  POKE  34,1: 
VTAB  2:  PRINT  "PROOFREADER 

INSTALLED" 
60  NEU 

100  DATA  216,32,27,253,201,141 
110  DATA  208,60,138,72,169,0 
120  DATA  72,189,255,1,201,160 
130  DATA  240,8,104,10,125,255 
140  DATA  1,103,0,72,202,208 
150  DATA  238,104,170,41,15,9 
160  DATA  48,201,58,144,2,233 
170  DATA  57,141,1,4,138,74 
180  DATA  74,74,74,41,15,9 
190  DATA  48,201,58,144,2,233 
200  DATA  57,141,0,4,104,170 
210  DATA  169,141,96 


COMPUTEI  August  1985 


MLX 


Machine  Language  Entry  Program 
For  Commodore  64 


Charles  Brannon,  Program  Editor 


MLX  is  a  labor-saving  utility  that  al- 
lows almost  fail-safe  entry  of  machine 
language  programs  published  in  COM- 
PUTE!. You  need  to  know  nothing  about 
machine  language  to  use  MLX — it  was 
designed  for  everyone.  At  least  8K  ex- 
pansion memory  is  required. 

MLX  is  a  new  way  to  enter  long  machine 
language  (ML)  programs  with  a  mini- 
mum of  fuss.  MLX  lets  you  enter  the 
numbers  from  a  special  list  that  looks 
similar  to  BASIC  DATA  statements.  It 
checks  your  typing  on  a  line-by-line 
basis.  It  won't  let  you  enter  illegal  char- 
acters when  you  should  be  typing  num- 
bers. It  won't  let  you  enter  numbers 
greater  than  255  (forbidden  in  ML).  It 
won't  let  you  enter  the  wrong  numbers 
on  the  wrong  line.  In  addition,  MLX 
creates  a  ready- to-use  tape  or  disk  fOe. 

Using  MLX 

Type  in  and  save  the  appropriate  ver- 
sion of  MLX  (you'll  want  to  use  it  in  the 
future).  When  you're  ready  to  type  in  an 
ML  program,  run  MLX.  MLX  for  the  64 
asks  you  for  two  numbers:  the  starting 
address  and  the  ending  address.  These 
numbers  are  given  in  the  article  accom- 
panying the  ML  program. 

When  you  run  MLX,  you'U  see  a 
prompt  corresponding  to  the  starting 
address.  The  prompt  is  the  current  line 
you  are  entering  from  the  listing.  It  in-. 
creases  by  sbt  each  time  you  enter  a  line. 
That's  because  each  line  has  seven  num- 
bers— six  actual  data  numbers  plus  a 
checksum  number.  The  checksum  verifies 
that  you  typed  the  previous  six  numbers 
correctly.  If  you  enter  any  of  the  six 
numbers  wrong,  or  enter  the  checksum 
wrong,  the  computer  rings  a  buzzer  and 
prompts  you  to  reenter  the  line.  If  you 
enter  it  correctly,  a  bell  tone  sounds  and 
you  continue  to  the  next  line. 

MLX  accepts  only  numbers  as  in- 
put. If  you  make  a  typing  error,  press  the 
INST/DEL  key;  the  entire  number  is 
deleted.  You  can  press  it  as  many  times 
as  necessary  back  to  the  start  of  the  line. 
If  you  enter  three-digit  numbers  as  list- 
ed, the  computer  automatically  prints 
the  comma  and  goes  on  to  accept  the 
next  number.  If  you  enter  less  than  three 
digits,  you  can  press  either  the  space  bar 
or  RETURN  key  to  advance  to  the  next 
number.  The  checksum  automatically 
appears  in  inverse  video  for  emphasis. 

To  simplify  your  typing,  MLX  rede- 
fines part  of  the  keyboard  as  a  numeric 
keypad  (lines  581-584): 


U     I     O  7      8      9 

H     J     K     L    become     0     4     5      6 

M     ,       .  12      3 

64  MLX  Commands 

When  you  finish  typing  an  ML  listing 
(assuming  you  type  it  all  in  one  session), 
you  can  then  save  the  completed  pro- 
gram on  tape  or  disk.  Follow  the  screen 
instructions.  If  you  get  any  errors  while 
saving,  you  probably  have  a  bad  disk,  or 
the  disk  is  full,  or  you've  made  a  typo 
when  entering  the  MLX  program  itself. 
You  don't  have  to  enter  the  whole 
ML  program  in  one  sitting.  MLX  lets  you 
enter  as  much  as  you  want,  save  it,  and 
then  reload  the  file  from  tape  or  disk 
later.  MLX  recognizes  these  commands: 

SHIFT-S:  Save 
SHIFT-L:  Load 
SHIFT-N:  New  Address 
SHIFT-D:  Display 

When  you  enter  a  command,  MLX 
jumps  out  of  the  line  you've  been  typ- 
ing, so  we  recommend  you  do  it  at  a  new 
prompt.  Use  the  Save  command  to  save 
what  you've  been  working  on.  It  will 
save  on  tape  or  disk,  as  if  you've  fin- 
ished, but  the  tape  or  disk  won't  work, 
of  course,  until  you  finish  the  typing. 
Remember  what  address  you  stop  at. 
The  next  time  you  run  MLX,  answer  all 
the  prompts  as  you  did  before,  then 
insert  the  disk  or  tape.  When  you  get  to 
the  entry  prompt,  press  SHlFT-L  to  re- 
load the  partly  completed  file  into  mem- 
ory. Then  use  the  New  Address 
command  to  resume  typing. 

To  use  the  New  Address  command, 
press  SHlFT-N  and  enter  the  address 
where  you  previously  stopped.  The 
prompt  will  change,  and  you  can  then 
continue  typing.  Always  enter  a  New 
Address  that  matches  up  with  one  of  the 
line  numbers  in  the  special  Usting,  or 
else  the  checksum  won't  work.  The  Dis- 
play command  lets  you  display  a  section 
of  your  typing.  After  you  press  SHIFT- 
D,  enter  two  addresses  within  the  line 
number  range  of  the  listing.  You  can 
abort  the  listing  by  pressing  any  key. 

64  MLXr  Machine  Language 
Entry 

10  REM  LINES  CHANGED  FROM  MLX 

£SPACE}VERSION  2.00  ARE  750 

,765,770  AND  860     : rem  50 

20  REM  LINE  CHANGED  FROM  MLX  V 

ERSION  2.01  IS  300  irem  147 

100  PRINT" t CLR } E  6  3 " ?  CHR? ( 142 ) ; 

CHR?(8); :POKE53281,l:POKE5 

3280,1  !rem  67 


101  POKE  788, 52: REM  DISABLE  RU 
N/STOP  :rem  119 

110  PRINT" {RVS} (39  SPACES} "; 

:rera  176 

120  PRINT" (RVS){ 14  SPACES  J 
(right) [OFF)g*|£{RVS} 
(RIGHT)  ( RIGHT jT2  SPACES) 
E*l[OFF)g*|£(RVS)£(RVS} 
(14  SPACES)";      : rem  250 

130  PRINT" (RVS) (14  SPACES) 
(RIGHT)  ^gI (right) 
(2  RIGHT)  (0FF)£{RVS)£ 
E*3(OFF)g*|[RVST 
(l4  SPACES)";       :rem  35 

140  PRINT "(RVS) (41  SPACES)" 

:rem  120 

200  PRINT" (2  DOWN) (PUR) (BLK)  M 
ACHINE  LANGUAGE  EDITOR  VER 
SIOR  2.02(5  DOWN)": rem  2  38 

210  PRINT"^53(2  UP)STARTING  AD 

DRESS?{8  SPACES)(9  LEFT)"; 

irem  143 

215  INPUTS:F=l-FtC$=CHR$(  31+11. 
9*F)  :rem  166 

220  IFS<256OR(S>40960ANDS<4915 
2)ORS>53  247THENGOSUB3000;G 
DTO210  :rem  235 

225  PRINT: PRINT: PRINT  :rem  180 

230  PRINT"E51(2  UP}ENDING  ADDR 
ESS? (8  SPACES) (9  LEFT)";: I 
NPUTE:F=1-F:CS=CHR$( 31+119 
*F)  :rem  20 

240  1FE<256OR(E>40960ANDE<4915 
2 ) ORE>  53247THENGOSUB3800 : G 
OTO230  :rem  183 

250  IPE<STHENPRINTC$;"{HVS)END 
ING  <  START ( 2  SPACES ) " :GOS 
UB1000:GOTO  230    : rem  176 

260  PRINT: PRINT: PRINT  :rem  179 

300  PRINT" (CLR) ";CHR5( 14 ) :AD=S 

:rem  56 

310  A=lsPRINTRIGHT$("0000"+MID 
5(STR5(AD),2),5)f":"; 

:rem  3  3 

315  F0RJ=AT06  : rem  3  3 

320  GOSUB570:IFN=-1TKENJ=J+N:G 
OTO320  :rem  2  28 

390  IFN=-211THE«  710    :reni  62 

400    IFN=-204THEN    790         ; rem    64 

410    IFN=-206THENPRINT:INPUT" 

(DQITN)  ENTER    NEW    ADDRESS"  ;Z 
Z  : rem   44 

415  IFN=-206THENIFZZ<SORZZ>ETH 
EPIPRINT"(RVS)OUT  OF  RANGE" 
:GOSUB1000:GOTO410:rera    225 

417  IFN=-206THENAD=ZZ:PRINT:GO 
TO310  :rem   238 

420    IF   No-196   THEN    480 

:rem   133 

430  PRINT ! INPUT " DI SPLAY : FROM " ; 
F: PRINT, "TO"; :INPUTT 

:rem  234 

440  IFF<SORP>E0RT<SORT>ETHENPR 
IBT"AT  LEAST" ;S;" (LEFT).  N 
OT  MORE  THAN";E:GOTO430 

; rem  159 

450  F0RI=FT0TSTEP6: PRINT: PRINT 
RIGHT? ( "0000"+MID5(STR$(I) 
,  2 ) , 5 ) ;  "  :  "  ;  : rem  30 

451  FORK=0TO5:K=PEEK( I+K) :PRIN 
TRIGHT5( "00"+MID?(STRS(N) , 
2),3);",";  : rem  66 


August  1 985     COMPUTEI      B9 


460  GETA5tIFA?>""THENPRINT:PRI 
NT:GOTO310  irein  25 

470  NEXTKiPRINTCHR?(20> ; iSEXTI 
SPRINT: PRINT:GOTO310 

: rem  50 

480  IPN<0  THEN  PRIKT:GOTO310 

:rem  168 

490  A(J)=N:NEXTJ       : rem  199 

500  CKSUM=AD-INT(AD/256)*256:F 
0RI=1T06:CKSUH=(CKSUM+A( I) 
)AND255:NEXT       : rem  200 

510  PRINTCHR5(i8) ; :GOSUB570:PR 
INTCHR5(146);       : rem  94 

511  IFN=-lTHENA=6:GOT0315 

:rem  254 

515  PRINTCHR$(20) :IFN=CKSUMTHE 

N530  :rem  122 

520  PRINT: PRINT "LIKE  ENTERED  W 

RONG  :  RE-ENTER": PRINT :GOS 

UB1000!GOTO3I0     :rem  176 

530  GOSUB2000  irem  218 

540  F0RI=1T06:P0KEAD+I-1,A(I> : 

NEXT:POKE5427  2,0:POKE54273 

,0  :rem  2  27 

550  AD=AD+6:IF  AD<E  THEM  310 

: rem  212 
560  GOTO  710  :rem  108 

570  N=0:Z=0  :rem  88 

580  PRINT  "g£i",'  :reni   81 

581  GETA?!lFA$=""THEN581 

:rem   95 

582  AV=-{A5="M")-2*(A$=",")-3* 
(A$=" . " )-4* (A$=" J" )-5* ( A$= 
"K")-6*(A5="L")  :rein   41 

583  AV=AV-7*(A5="U")-S*(A?="I" 
)-9*(A$="0") !IFA?="H"THENA 
Sss"0"  srein  134 

584  IPAV>0THENAS=CHR$(46+AV) 

:rein   134 

585  PRINTCHR$(20); :A=ASC(A5) :I 
FA=13ORA=44ORA=32THEN670 

! rem   229 
590    IFA>128THENN=-A:RETURN 

:reni   137 
600   IFAO20   THEN  630         :  rem   10 
610    GOSUB690!lFI=lANDT=44THENN 
=-1 :PRIKT"lOFF}{LEFT) 
{left]  ";  :GOTO690  :reni    62 

620   GOTO570  : rem   109 

630    IFA<48ORA>57THEN580 

rrein   105 
640   PRINTA5; :H=N*10+A-48 

srejn   106 

650  IFN>255  THEN  A=20:GOSUB100 

0:GOTO600  :rem  229 

660  2=Z+1:IFZ<3THEN580  :rem  71 

670  IF2=0THRNGOSUB1000:GOTO570 

: rem  114 
680  PRINT", "r :RETURN   : rem  240 

690  S%=PEEK(209)+256*PEEK(210) 
+PEEK(211)         :rem  149 

691  F0RI=1T03:T=PEEK(S%-I) 

trem  67 
695  IFT<>44ANDT<>5aTHENPOKES%- 

I,32:NEXT  :rem  205 

700  PRINTLEFT5{';[3  LEFT)  ",1-1) 

;  :  RETURN  '  : rem  7 
710  PRINT" (CLRl {RVS}***  SAVE  * 

**{3  DOWN)"  :rem  236 
715  PRINT" (2  DOWN) (PRESS  { RVS ) 

RETURN (OFF)  ALONE  TO  CAKCE 

L  SAVE) (down)"  :rem  106 
720  F$="":INPUT"ED0WN}  FILENAM 

E";F$:IFF?=""THENPRINT:PRI 

NT:GOTO310  : rem    71 

730    PRINT:PRINT"[2    DOIVN  }  f  RVS  ) T 

JOFFJAPE    OR    (RVS)D(0FF)ISK 

:  (T/D)"  :rem  228 

740  GETA? : IFA?  <  > "T" ANDAS<> "D"T 

HEN740  :rem  36 


750  DV=1-7*(A5="D") :IFDV=eTHEN 
FS="0:"+F5iOPEN15,3,15, "S" 
+F9:CLOSE15        s rem  212 

760  T$=F$:ZK=PEEK(53)+ZS6*PEEK 
( 54) -LEN{ T5 ) : POKE782 , ZK/25 
6  : rem  3 

762  POKE781,ZK-PEEK(782)*256:P 
OKE780,LEN{T$) :SYS65469 

trem  109 

763  POKE7B0,1:POKE781,DV:POKE7 
82,ltSYS65466       :rem  69 

765  K=S:POKE254,K/256sPOKE253, 
K-PEEK  (  254 )-*  256  : POKE780  ,  2  5 
3  :rem  17 

766  K=E+l:POKE782,K/256!POKE78 
1 , K-PEEK( 782 )*256 :SYS65496 

;rem  235 
770  IF(PEEK(783)AND1)0R(191AND 

ST)THEN780  :rem  111 
775  PRI NT "( DOWN )DOME. [down]" :G 

OTO310  :rem  113 

780  PRINT "(DOWN) ERROR  ON  SAVE. 
{2  SPACES )TRY  AGAIN. "iIFDV 
=1THEN720  :rem  171 

781  0PEN15,8,15:INPUT#15,E1$,E 
2? :PRINTE1$  r E2S :CL0SE15 :G0 
TO7  20  :rem  103 

790  PRINT" [CLR) {RVS]***  LOAD  * 
**{2  DOWN)"        :reni  212 

795  PRINT" [2  DOVml (PRESS  [ RVS ) 
RETURN (OFF)  ALONE  TO  CANCE 
L  LOAD)"  :rem  8  2 

800  F$="":INPUT" [2  DOWN)  FILEN 
AME";F$!lFF5=""THENPRINTia 
OTO310  :rem  144 

810  PRIKT:PRINT"[2  DOWN) (RVS )T 
{OFF} APE  OR  (RVS3d{0FF)ISK 
:  (T/D)"  :rem  227 

820  GETA?!lFA$<>"T"ANDA5<>"D"T 
HEK820  :rem  34 

830  DV=1-7*(A$="D")  iIFDVs-STHEN 
F5="0!"+F$         :rem  157 

840  T$=F5:ZK=PEEK(53)+256*PEEK 
(54)-LEN(T5) :POKE782, ZK/25 
6  I  rem  2 

841  POKE781,ZK-PEEK(782)*256:P 
OKE780,LEN(T5) :SYS65469 

: rem  107 
845  POKE7S0,1:POKE781,DV!POKE7 
82,1  !SYS65466       :rem  70 
850  POKE780,0:SYS65493  : rem  11 
860  IF(PEEK(783)AND1)0R(191AND 
ST)THENa70  :reni  1X1 

865  PRINT"{D0WN)D0NE. ":GOTO310 

; rem  96 
870  PRINT "{down) ERROR  ON  LOAD. 
{2  SPACES }TRY  AGAIN. { DOlrtI) 
":IFDV=1THEN800  : rem  172 
880  OPEN15,8,15:lNPUT#15,E15,E 
2? : PRINTEl? ; E2$ : CL0SE15 :G0 
TO800  :rem  102 

1000  REM  BUZZER        : rem  135 

1001  POKE54296,15:POKB54277,45 
:POKE54278,165    :rem  207 

1002  POKE54276,33!POKE  54273,6 
;POKE54272,5       : rem  42 

1003  FORT=lTO200:NEXTsPOKE5427 
6,32: POKE54273 , 0 : POKE5427 
2,0: RETURN        trem  202 

2000  REM  BELL  SOUND     s rem  78 

2001  POKES4296,15:POKE54277,0: 
POKE54278,247     s rem  152 

2002  POKE  54276,17 :POKE54273, 4 
0sPOKE54272,0      : rem  86 

2003  FORT=1TO100:NEXT:POKE5427 
6, 16: RETURN        : rem  57 

3000  PRINTC?j"{RVS)NOT  ZERO  PA 
GE  OR  ROM":GOTO1000 

: rem  89 


90     COMPUTEI     August  1985 


from 

COMPUTER 

HOUSE 

Specialties,.. 

American  Covers 

Leather  Look  -  Durable 

for  all  Drives.  Computers  & 

Monitors  —  CALL 

Axiom  Interfaces 

Parallax- AT 69.95 

Porollax-TJ 69,95 

pQra[lQx-CD  69.95 

Discwasher 
Spike  Masters 

FP-1000 59-95 

P-1000 49,95 

P-500 18.95 

Carl  Battery  Pack 
Caring  Case 

199,95 

MPP  Modems 

1000E  89.95 

1064  , 79.95 

Video  7  C-64  Modem  39.95 

MPP 

Interface  1150  63.95 

Print  Buffer 119.95 

1200  Baud  MPP  Modem  .....,.,.  Call 

Indus  Disk  Drives 

GT-Atari 259,95 

GT-C-64 269.95 

GT-Apple  ....'. 179.95 

Intronic  Kameleon 

Apple  2C  M-100  Interface  69.95 

AS  Switch  Box  w/cobies  99.00 

Josco  Printer  Cable 

IBM  Printer  Coble  24.95 

MTR  Monitor 

IBM-nL  Green  or  Amber 169.95 

w/swivel  &  tilt  base 

Star  MIcronics,  Inc. 

SG10 239.95 

SG10C. 259.00 

SD10 Call 

SD15  Call 

SR10 Call 

SR15 Call 

SB Call 

COMPUTER  HOUSE  Specialties 

P.O.  Box  26 

Belton,  MO  64012 

Call  Toll  Free  to  Order 

Outside  Kansas  call 
1-800-2S5-0390  then  454457 

In  Kansas  Coll 
1-000-332-0274  then  454457 

We  accepi  checks,  monev  order.  Visa  &.  Master^ 
Cora  (inciuOe  •  fteifpiroTion  date)  Please  add 
3" ;  %  for  credit  cord  pufchoses  Perscnai  & 
Company  checks  allow  2  weeks  to  clear  School 
orders  accepted  Price  subiect  to  change  without 
rvotice  Dealer  inquiries  invited  Missouri  residents 
add  t',%  sales  Tok  Vi&a.  MasterCard,  Coshrers 
Checks  or  Money  Otders  Orders  will  DC  sf^icped 
r>ext  doy  Due  lo  our  low  prices  all  sales  are  final 
All  returns  must  riave  return  authonration  nurntJer 
Coll  to  otjtom  one 


COMPUTER 

HOUSE 
Specialties 


A  ATARI 


ATARI  is  a  trademark  o1  ATARI  INC. 

Atari  130  XE  ...  Call  for  Latest 
Atari  1050  Disk  Drive  . . .  Price 

SUPERPRINTER  PACKAGES 

SG-IO&U-PrmtA   289 

Panasonic  1091  and  U-Print  A  , 339 

Panasonic  1090  and  U-Print  A  269 

Legend  880  and  U-Print  A 287 

Citoh  851 OAP  and  U-PrinI  A 369 

Powertype  &  U-Print  A  369 

Super  Printer  Packages  have  no  extra  charges  when 

shipped  in  Continental  USA. 

ATARI  INTERFACES      INDUS  GT 


GENERAL 
HARDWARE 


Aid  Intedasl  I  , . . .  99,95 

U-Print  A  59.95 

MPP1150    64.95 

U-Print  A/16K  Buffer 

79.95 

U-Print  A/32K  Buffer 

99  95 
U-PfintA/MK  Buffer 

109.95 

R-Verter  Arjaptor     39.95 


for  Atari    219 

MPP  1000E 

Moderr   89.95 


U-Call  Modem 
Adapter 44.95 


MMMi 


Basic  XL-Carl 

.  49.95 

Mac  eSXL-Carl  

.  62.95 

Action-Cart 

.  62.95 

[Writer's  Tool-Carl 

.  62.95 

Monicey  Wrench  ll-Carl 

.  23.95 

Ftamrod  XL  &  Omniview  XL 

99.95 

r  Nik  Dim  AitqusI  31    I^IS 


ATARI  SOFTWARE 


BflODERBUND 

Bank  Streel  Wnter-D  -19,95 

Loilerunner-D 23.95 

Spelunker-D 20.95 

Steim-D  20.95 

Print  Shop-D  34.95 

Serpent's  Slar-D     .   .  27.95 

Prim  Shop  Paper  ....  16.95 

ELECTRONIC  ARTS 

Arcfton 19.95 

Arction  il   24.95 

Mule 19.95 

flealm/lmpossibility   .  19.95 

Murder.'Zindernejl  , ,  19.95 

Music  Construction    .  19.95 

Pinball  Construction  19.95 

One  on  One  24.95 

Seven  Cities  of  Gold  24.95 

Financial  Cookbook    ,  29.95 

INFOCOM 

Hitcbiker-D 29.95 

Zork  1,11  or  III    29.95 

Enchanter-D 29.95 

Deadlifie-D 34.95 

Wist)finger-D  29.95 

MICROPROSE 

F-t5  Slrike  Eagle-D  23.95 

Crusade  in  Eurape-D  27.95 

Decision  in  Deserl-D  27,95 

Kennedy  Aoproach-D  23.95 

MISCELLANEOUS 
ATARI 

Right  Simulator  ll-D    .  34.95 

S.A.M.-O   41.95 

Megafont-0 19.95 

Monkey  Wrencft  ll-Cart  !9,95 

Beachbead-DT 23.95 

Spy  vs.  Spv-D  23.95 

WPP  Modern  Driver-D  19.95 

Net  Worlh-D    49,95 

Omnitrend  Universe-D  69.95 

Adventure  Writer-D  27.95 

MMGConnpilBr-0  ., .,  69.95 

Summer  Games-O      ,  27,95 

Pitstop  ll-O   , , , 27,95 

Ultima  1-0   23,95 

Ultima  ll-D 41.95 

Ultima  IV-0    41,95 


MISC.  ATARI  (cont'd.) 

Letter  PerfeclSpell-D  49,95 

Raid  Over  Moscow-0  27,95 

MicroLeaQ  Baseball-0  29.95 

Paper  Ciip-D     39,95 

On-Track  Racing-D    . .  20.95 

Home  Pak-D    34.95 

B-Graph-D  49,95 

Data  Perlect-D 49,95 

OSS 

MAC65  Tool  Kil-D  ,  27,95 
Action  Tool  Kit-0  ,  . ,  27,95 
Basic  XL  Tool  Kil-D     ,  27,95 

SSI 

Carrier  Force-D    41,95 

Combat  Leader-D,T  ,  27,95 
Cosm-c  Balance  ll-D  ,  27,95 
Cosmic  Baiance-D  , , ,  27,95 
Broadsides-D  ...,.,.  27,95 
War  in  Russia-D  . , , ,  55.95 
50  Mission  Crush-D  .   27,95 

Questran-D    34,95 

Rails  West-D   27,95 

Computer  Ambush-D  41,95 
Computer  Basebali-O  27.95 
Breakthrougli 

Ardennes-D  41  95 

Field  ot  Fire-D   27,95 

Impenal  Galaclian'D  ,  27  95 
Comp.  QuarterPack-D  27,95 
Oper  Market  Garden-D  34,95 
Kamplgrupee-O     ,   ,    41,95 

SYNAPSE 

Syn1lie-D  34,95 

SyncaiC-D    34,95 

Syntrend-D    34,95 

Syncl^ion-O  27,95 

Synccmm-D 27,95 

Synstock-D   27,95 

Relai-D   79,95 

Blue  Max  2001-D       ,  23,95 

HUNDREDS 
OF  ITEMS 
AVAILABLE, 
PLEASE  CALL 


SG-10 
Printer...  219 

P,0.  the  Party  Quiz   .   29,95 
For  Apoie,  C-64  &  Atari 

PRINTER  BUFFERS 

Microfaier Call 

I^PP  Micro  Stirffer   119.95 

U-Print-16K 79.95 

U-Print-32K 99.95 

U-Print-64K  ....  109.95 

Amm  h 

BUPEU  i 


MODEMS 

Vollismodem  300  59 

Voiksmodem  1200   ....  189 

Hayes  1200 Call 

Hayes  300 169 

Micromodem  HE  Call 

Maxwell  300.'1 200  ,,    ,319 

PRINTERS 

CitohS510AP   299 

Legend  lOeO 239 

Citoh  7500AP   219 

Epson   , ,  Call 

Toshiba  1351 Call 

Toshiba  1340 ,  Call 

Legend  B80 219 

Panasonic  1090   199 

Panasonic  1091      269 

Powertype 309 


BUY  ANY  inFocom  TITLE 

AND  GET  THE 

CORRESPONDING  iriFOCom 

INV1SICLUE 

ABSOLUTELY  FREE. 

Siiiici  SdcciiI  Prices  EriHiiic  Hmv  Thm  Aiigusi  31 ,  195^ 


APPLE 


T'Casselte 

D'Olsk 

Cart-Cartridge 


BRGDERBUND 

INFOCOM 

Print  Shop-D     , , 

33,95 

Hitchiker   

29,95 

Karateka-D  

21,95 

Zorkl.  Ilorlll 

29,95 

Champ  LDderunner-D 

21,95 

Enchanter  

29,95 

Bank  Street  Wnter-D 

44,95 

Deadline 

34,95 

Print  Shop  Graphies-D 

17,95 

Wisbringer-0 

39,95 

Daiile  Draw 

39  95 

ELECTRONIC  ARTS 

SSI 

Skytox  

29,95 

Gemstone  Warrior  , , 

21  95 

One  on  One  

29,95 

Kamptgruppe 

39,95 

Seven  Cities.Gold  , , , 

29,95 

Phantasie 

25  95 

Archon  

24,95 

Questron 

33  95 

Adv  Construction  Kd 

37,95 

APPLE  MISCELLANEOUS 

Ghostbusters     , 

25  95 

Conan    

25,95 

Flight  Simulator  II     , 
F-15  Strike  Eagie  ,,, 

34  95 

Sargon  III 

33,95 

21,95 

Dollars  &  Sense  , , . , 

64,95 

Summer  Games 

25,95 
29  95 

PFS  File 

79  95 

Micro  League  Basetiall 
Stir  League  Basetiali 

PFS  Write 

79  95 

23,95 

PFS  Report   

79,95 

Wl2ardry,'Prowina  , , , 

33,95 

Mulbplan  

84.96 

Ullima  III  

39,95 

Supercalc  III    

124,95 

Bruce  Lee 

25  95 

Sideways 

39  95 

Millionaire  

33,95 

Crosstalk  

129,95 

Death/Carribean  

21,95 

Jane  w/Mouse  

129,96 

Felony   

21,95 

BPI  Software  

,,,  Call 

.^% 

EST.  ibBi 

^^  to  I.     I  3D£ 

'Com.pu  t(^6iiltu. 

PO,  Box  17882,  Wilwauiiee.WI  53217 

ORDER  LINES  OPEN 

Mon-Fri  11  a,m,  -  7  p,m,  CST  •  Sal,  12  p,ffl,  -  5  p,m,  CST 

To  Order  Call  Toll  Free 

800-558-0003 

Far  Technical  Info,  Order 
Inquiries,  or  for  Wise.  Orders 

414-351-2007 

ORDERING  INFORMATION:  Please  specify  system 
For  last  deli»ery  send  cashier  s  check,  money  order  or  direct  bank 
transfers.  Personal  and  company  checks  allow  2  weeks  to  clear. 
Charges  IcrCOO  are  S3  00  School  Purchase  Orders  welcome.  In 
CONTINENTAL  USA,  include  S3, 00  shipping  per  software  order. 
Include  4?a  shipping  on  all  Hardware  orders,  minimum  S4,00, 
Mastercard  S  Visa  please  include  card  #  and  expiration  date,  Wl 
residents  please  add  5''.  sales  tax,  HI.  AK,  FPO,  APO.  Canadian 
orders  —  add  5%  shipping,  minimum  S5,00,  All  other  toreign 
orders,  please  add  15%  shipping,  minimum  S10,00,  Ai'  goods 
are  new  and  include  factory  warranty.  Due  to  our  low  pnces,  all 
sales  are  final  All  defective  leturnsmust  have  a  return  auihoiija- 
tion  number  Please  call  41 4-351-2007  to  obtain  an  RA#  or  your 
return  will  NOT  be  accepted  for  replacement  or  repair.  Prices  and 
availability  are  supjeci  •"  change  without  notice. 


COMMODORE  64s 


SUPER  PRINTER  PACKAGES 

SG-10  &G-WiZ 282 

Panasonic  1091  &  G-WIZ  333 

Panasonic  1Q90  &  G-WIZ  261 

Legend  880  &  G-WIZ    271 

Legend  1080  &  G-WIZ   291 

Citoh  8510AP&  G-WIZ  364 

Super  Printer  Packages  have  no  extra  charges 
added  when  shipped  in  Continental  USA 

MODEMS  Animation  Station 

Westridge  AA'AD     69,95     for  C-64 59,95 

Total  Tele  Modem    49,95     pfilNTER 

f}^l^° llil    INTERFACES 

1660  I^odern  , , , ,  49.93     ^,^^  gg  35 

INDUS  G-Wiz   59.95 

Indus  GT  far  C-64      239     Oata  Share  PPI  ..  49,95 
Cardco  G  -I-   Call 


€=i4  sypi^  SPiaALi 


Slap  Shot  Hockey-D  . . .  14.95 
Mastering  The  Sal-0    .    49.95 
The  Perfect  Score-D  . . .  43.95 
Mirage  Datatiase  Manager/ 
Report  Generator-D    .    49.95 

Mirage  Prolessional 
Word  Processor-D    . . .  49.95 

-      r  Special  PncK  Ellecliw  Now  TImi  August  11 .  1)9} 


COMMODORE  SOFTWARE 


ACCESS 

Beachhead-DT 23,95 

Raid  Mpscow-D'T  , , ,  27,95 
Scrolls  of  Abadon-D.T   23,95 

Mach  V-Cart 23,95 

Beachead  ll-D  27,95 

BATTERIES  INCLUDED 

Consultant-D         ,    , ,  64,95 

Paperclip  w  Spellpak-D  79,95 

Super  Busscard  II  129,95 

Home  Oiganza  llans-D  16,95 

B,l,  BOCard 109,95 

Cal-Kit                   ,,  34  95 

Home  Pak-D  34,95 

COMMODORE 

Easy  Calc-Cart  34,95 

Easy  l^ail-D 19,95 

EasyScript-D 44,95 

EasySpell-D  19,95 

Logo-O  , , 49,95 

The  Manager-D     , ,    ,  34,95 

Suspended-D    29.95 

Slarcross-D  29  95 

Deadline-D  29,95 

Culthrojts-D   29,95 

The  Suspect-D 29  95 

Zork  1,11  or  lll-D 29  95 

ELECTRONIC  ARTS 

SkyFon-D       24  95 

Mail  Order  Monster-D  24  95 
Adv,  Construction-O  29  95 
Racing  Oestrucbon-D  24.95 
See  Alan  Section  lor  flesf  of 
/(ems  and  Prices 

INFOCOM 

Enchanter-O 24,95 

Planettail-D   24  95 

Sorcerer-D 29  95 

Hi!chiker-D 24,95 

Wisbiinger-D 29  95 

SSI 

Carrier  force-D    ,.,,    41,95 

Ouestron-0    27  95 

Broadsides-D  27  95 

Comp  Ouarterback-D  27,95 
Computer  Ambush-D     41,95 

Kamplgiuppe-0  41  95 

Oper  Kitfua  Gafden-D  34.95 
Gemstone  Warrlor-D  23.95 
ImperiumGalacbum-D  27,95 

Phantasie-D  27  95 

JirfelsCutthroats-D      27  95 


MISC.  COMMODORE 

Ultima  lll-D  , , , , 

, ,,,  41,95 

Flight  Simulator  ll-D  ,    34,95 

StarLeag,Basebaii-OT  23,95 

liiastertyjie-D.'Cart 

,   ,  27,95 

Strip  Poker-D  , , 

, ,,,  23,95 

Sam-D 

,.,  41,95 

Sp«lunker-D      , 

,,    20,95 

Steahh-D  

,,,  20,95 

Bungling  Bay-D  , 

, , ,  20,95 

Or  Creep-D  , , , 

, , ,  20,95 

On.Field  Tennis-D/T    ,    23,95 

F-15  Strike  Eagle- 

)T     23,95 

Movie  Maker-D   , 

, , ,  37,95 

VIP  Tcrminal-O    , 

, , ,  29.95 

. .  27,95 

Ghost  Busiers-D 

, , ,  24,95 

Koala  Pnnter-D   , 

,.,  19,95 

Karaleka-D 

20  95 

Print  Shop-D    , , , 

, , ,  34,95 

Amazon-D 

99  Q,'i 

RendozvousRama-D     22,95 

Farenhelt  451-0  , 

, ,  22,95 

Dragonwoild-D    , 

, , ,  22,95 

Shadow  Keep-D  , 

, , ,  22  95 

Spy  vs  Spy-D  ,, 

, , .  23,95 

Stress  Relax  Sys  - 

0       79,95 

Blue  Max-DJT  , , , 

,  ,  ,  23,95 

Ullima  IV-D     , , , 

, , ,  41 ,95 

Ullima  ll-D      ,,, 

,,.  41,95 

Micro-League 

Baseball-D 

,,,  29  95 

Home  Pak-0    , , 

, , ,  34  95 

Math  Biasier-O 

,.     34,95 

WordAttacK-D 

,,,  34  95 

Speed  Reader  II 

,,,  49,95 

Stunt  Flyer-O 

,       ,  Call 

Sargon  lll-D    , 

,,.  34,95 

Super  Zaimn-O 

,,,  23,95 

Decision  Desert-D 

,,  27  95 

Kennedy  Apptoach-D     23,95 

Crusade€urope-D 

,  27  95 

Halley  Proiect-D 

, ,  29  95 

Transytvannia-O 

,  23,95 

Bounty  Bob-Cart 

, ,  34,95 

Blue  Max  2001-D 

, ,  23,95 

Fleet  System  ll-D 

, ,  49,95 

Evelyn  Wood-D 

,  34,95 

Write  Now-Car! 

,  34,95 

Bruce  Lee-D     , 

,  ,  27,95 

Conan-D    , 

27  95 

Fast  Load-Cart 

25,95 

Net  Worth-D     , 

49,95 

No  surcharge  for  MasterCard    |— "1  or  Visa   [S 


Lyco  Computer  Marketing  &  Consultants 


ON  THESE 
IN  STOCK 


PRINTERS 


AXION 

GP  550  AT  (Atari) 249 

GP  550  CD  (C-64) 249 

GP  550  PC  (IBM) 239 

GP  550  AP  (Apple) 279 

GP  TOOATJAIari) 459 

GP  700  AP   Apple) 459 

Elite  5CD  (C-64y...' 329 

BLUE  CHIPS 

M12010 S275 

M1?010C-94 S275 

C.  ITOH 

Prowriler  8510  AP 279 

8510  BC2 389 

8510  BPl 319 

8510  SP 379 

8510  SR 429 

8510  SCP 459 

8510  SCR 479 

7500  AP 205 

7500  AP 245 

1550P--. 449 

1550  BCD 4B9 

A-IO-SO-P 459 

F  10  40PU  or  RDU 888 

F10  SSPU  or  RDU 1069 


CARDCO 

LQ1 369 

LQ3 279 

CITIZEN 

MSP-10 329 

MSP-15 499 

MSP.20 479 

MSP-25 599 

COMREX 

Cn-II-EC  Comriter  HE  Parallel 359 

CH-ll-ES  Comriler  II  E  Parallel 379 

CR-IV-C  Comnier  IV  Parallel 689 

CB-IV-S  Corrriter  IV  Serial 689 

Corona 

1.P300  Laser  Printer  ....   2699 
200361  Toner  Cartridge    --   89 

DIGITAL 
DEVICES 

I6K  pnnler  tju'lei  99  ?5 

32K  pfinier  buffer  I  19  75 

fiJK  p:inler  buffer 1  69  95 


EPSON 

FX  80  +  249 

LX  BO 239 

FX  too 579 

JX80- 499 

LQ  1500  P 1089 

LQ  1500  S 1149 

Hi-eo  color  plotter 399 

JUKI 

Juki  6100 379 

RS  232  Serial  Board-- 55 

Tractor 119 

Sheel  Feeder 209 

Juki  6300.-,  .....769 

LEGEND 

8B0 219 

1080 239 

1200 249 

■^    PRINTER    if 

INTERFACING 

Available 


MANNESMANN  TALLY 

Seirit  80 255 

NfTL-160L 549 

MTL-IBOL 739 

NEC 

NEC  8026 - *699 

NEC  8027 S359 

OKIDATA 

Oklmate  10 179 

1B2 249 

84 645 

92 349 

93 565 

92  Imaoewriter 425 

92  IBIvTVersiOfi 349 

OLIVETTI 

DY  2S0  Parallel 739 

DY  250  Serial 729 

DY  450  Parallel 1099 

DY  450  Serial 1079 


PANASONIC 

1091 239 

1090 189 

1092 395 

1093 429 

3151 459 

Smith  Corona 

Fastexf  80 189  00 

0100 219.00 

D200 399.00 

D300 519.00 

LlOOO   33900 

STARMICRONICS 

SG-W 219 

SG-15 379 

SD-10 ; 339 

SD-1S 445 

SR.IO 489 

SR-15 585 

Powertype 309 

SB-IO.. CALL 


OVER  2000  SOFTWARE  TITLES  IN  STOCK 


COMPUTER 
CARE 


BIB 

DISK  DRIVE 

CLEANER tl2  75 

COIWPUTEHCaREKIT      .*197S 

NORTRONiCS 

DISK  DRIVE 

CLEANER 

with  software 
REG.  49.95       NOW  19.95 

software  lor  IBM-PC    Alari.  Vrc, 

ADCle,  Tl 129  75 

DISK  CLEANER 

REFILL... t'4  75 

C*SSDRIUECLEANE.P...  S9  95 
MEDIASULK ERASER  ...  t46  75 

NEC 

PC8201  Portable    J429 

NECB1  64K  Compulel 

System  J 1049 

NECB?  128  K  Computer 

Syslem ...11299 

PC822 1  Thermal  Printer ...  S  139 
PCa2018KHAMCnip  ...S  99 
PCa20632KRAMCar1..,  J  299 

PC  300  Modem S      65 

PC8B01  fvlSDOS 

16  Bit  Card S   339 


PRINTING 
PAPER 


3000  SHEETS 

FANFOLD %t2  75 

1000  SHEETS 

FAI^FOLD Jt9  75 

t000SHEETLETTER.-.S21  95 
200  SHEETS  LETTER.... ta  99 
1 50  flAG  STATIONARY ...  1 1 0  99 
MAILING  LABELS  1 1  m  |  _  . .  $9  95 

m  »  1 1  toco 

FANFOLD i2A  75 

INNOVATIVE  CONCEPTS 

Flip-n-File  10 3.50 

Flip-n.File  15 8.25 

Flip-n-File  25  Lock 17.95 

Flip-n-File  50 17.25 

Flip-n-File  50  Lock 22.95 

Flip-n-File  Rom  17.25 


DRIVES 


MSD 

SDt  Dnve 229 

SD2  Drive 489 

INDUS 
GT  Atari 219 

GT  Commodore 239 

GT  Apple  w/  Controller 219 

GT  Apple 169 


DISKETTES 


SKC 

(Box  10) 

5'/."  SKC-SSSD 10.99 

5V«"  SKC-SSDD 13.99 

SV.-  SKC-DSDD 15.99 

ELEPHANT 

(Box  10] 

S'/i"  SSSD 13.99 

S'A"  SSOD - 15.99 

S'/i--  DSDD 19.99 

MAXELL 

5V."  MD-1 .,-.-16.99 

5'/<"  MD-2 23.75 

(Box  10] 


IBM-PC 

SOFTWARE 


'LOTUS 

Lotus  1-2.3 309.00 

Symphony 439.00 

•ASHTON-TATE 

Framework 385.00 

d  Base  !l 239.00 

d  Base  111 385.00 

d  Base  II  upgrade 135.00 

•PARADISE 

5-Pak  Multitunclion  179.00 

Modular  Graphics 289.00 

IvIorJular  Graphics  Card 315  00 


IBM-PC 

COMPATABLE 


CORONA 

PPG  22A 

Portable  256K-Anib6r If  99 

PPC  22G 

Portable  256-K-Green 1699 

PPCXTA 

Portable  256K-lOMea 2899 

CORI  2eK  128K  RAM 1599 

Zenith 

7-150 Call 

Leading  Edge 

PC  Compatable  Call 

•LEADING  EDGE 

Nutshell 69.95 

LEWP  Basic 65,00 

LEWP  Merge  Prim 99,00 

LE  Spell  COrreclton 169,00 

•QUADRAM 

Quad  Jf  Exp.  Cfiassis  .  .519  00 
Quad  Jr  Exp,  Memory,  .209,00 

Quad  Memory  Jr 209.00 

Quadcolor  1 209.00 

*STB 

Super  R10-64K 279.00 

Super  R10.192K 399.00 

Super  R10-256K 449.00 

Graphics  Plus  II 339.00 

•PARADISE 

Multi-Display  Card 335.00 

CONTINENTAL 

Home  Accountant 35.00 


TOLL  FREE  1-800-233-8760 


TO  ORDER 


CALL   TOLL   FRE  E 


O'  send  order  «o 


Lyco  Compuief 
P  O    Bo«  5086 
Customer  Service  1-717-327-1825  Jefsey  Snore    PA  17740 


800-233-8760 


RISK  FREE  POLICY 

fn-slQck  Items  shippec  within  24  hours  ol  order.  No  deposit  on  C  0-D  orOera.  Free 
shipping  on  prepaid  cash  orders  wilhin  the  continental  U.S  Votume  discojnls 
availaftle  PA  residenis  add  sales  lax.  APO  FPO.  and  iniernatPonal  orders  add 
SS.OO  plus  3°-t  tor  priority  mail  service-  Advertised  prices  show  4%  discount  for 
cash ,  add  4%  for  MasierCard  or  Visa  Personal  checks  require  4  weeks'  clearance 
belore  shipping.  Ask  about  UPS  Blje  and  Red  label  shipping.  All  merchandise 
earned  under  manufacturer's  warrar^ly.  Free  catalog  with  order  All  items  subject 
10  change  wiitvout  notice 


JK  ATARI  JK  I  appkZ  I  COMMODORE 


ATARI 

800  XL  Computer CALL 

1050  Drive 169 

1010  Recorder 44 

1020 55 

1025 185 

1027,. 239 

850 109 


SYNAPSE 

lATABI) 

Synfile 34,95 

Syncalc 34.95 

Syncomm 27.95 

Syntrend 27.95 

Synchron 27.95 

Synstock .27.95 


SCARBOHOUGH 

Net  Worth 49.95 

Mastertype 24.75 

Improved  Mastertype 24.75 

Mastertype's  Filer 24.75 

SPINNAKER 

Delta  Drawing  Room 19.95 

Cosmic  Life  Room 19,95 

Up  (or  Grafts  Room 19.95 


SSI 

Baseball 22.75 

Question 26.75 

50  Mission  Crush 22.75 

Broadsides 22.75 

Computer  Ambush 34.75 


Trillium 

Stiadowkeep    £26  75 

Fatirenheit  451    $26-75 

Amazon   E26,75 


MICROPOSE 

Solo  Flight 22  75 

NATO 22,75 

Spitfire  Ace 19,95 

F-1S  Strike  Eagle 22,75 


CONTINENTAL 

Home  Accountant 44.75 

1985  Boo<  of  A;at'i  Soflwa'e    16,95 


SUBLOGIC 

Flight  Simulator  II  ,      .  32.75 
Night  Ivlission  Pmball  .   .18  75 

PERSONAL 
PERIPHEIALS 

Sucer  Skelch-Alari 32  95 


BRODERBUND 

Bank  St.  Writer 42.75 

The  Print  Shop 29,95 

Serpent's  Star 24.75 

Spelunker .,,19.95 

Stealth 19.95 


BUSINESS 

VISICALC  J  I  59  75 


Scarborough 


LETTER  PERFECT  R 
OATA  PERFECT 
FILE  MANAGER 
HOfilE  FILE  MGR 


59  00 
189  75 
S69  75 
£69  7  5 


ADVENTURE 

Dishey 29.95 

Ultra  Disassembler 29.95 

GRAPHIC  TABLET 


Super  Skelch 
Koaia  Pad, 


.32.95 
59  95 


EASTERN  HOUSE 

Monkey  Wrench  11800 24.95 

Monkey  Wrencti  11800  XL      24.95 

CONTINENTAL 


Home  Accountant  , 
1985  Bock  of  Alan  Software 


44  95 

16  95 


ADVENTURE  INTERNATIONAL 

Diskey 32,75 

Ultra  Dissambler 32,75 

WICO 

(Joysticks) 
15-9714  Bat  Handle       ,  16,99 

50-2002  Super  3-way 19,99 

72-4545  Trackball  ,29,99 


Songwriter   

Picturewrtt  .  - 

Phi  Beta  F       

Mastertype    

Run  f  Money       

NetWonn 

Mlcroprose 
Solo  Flight 

NATO         

SpiKire 
F-15  Strike 
Air  Rescue 

SSI 

Baseball 
Question 
Germany  1985 
50  Missions 

Spinnaker 

Atpliabel 
Storv  Mactiine 
Kids  on  Keys 
Grandma 
Snooper  Troop 

Broderbund 

Bank  Si   Writer 
Bank  St   Filer 
Bank  Si    Mailer 
Bank  S!   Spell 
Ma&K  o'  Sun 
Prinl  shop 
Lode  Runner 


■S24  76 

■  S24.75 
■S32  75 
■$24  75 

■  S32  75 
£54  75 

£22  75 
£22.75 
£22  95 
£22  75 
£22  75 

£22  75 
£26  75 
£3275 
£21  75 

£18.75 
$1975 
£1S  75 
£19  75 
£22  75 


£42  75 
542  75 
£42  75 
£42  75 
£24  95 
32  95 
£22  9b 


COMMODORE 

Simon's  Basic 34.75 

Assembler  64 34,75 

Super  Expander,- ,..22,75 

Logo  64 49.75 

Pilot  64 38.75 

Easy  Gate 34.75 

Easy  Scrip! 38.75 

C  64  Computer CALL 

C  1541  Disk  Drive 195 

MPS  801  Printer 175 

C  1702  Monitor 209 

C  1531  Oatasetle 39.75 

C  1660  Auto  Modem 35 

C  1660  Auto  Modem 85 

SS1 

{C-64} 

Computer  Baseball 24.75 

Field  of  Fire 24.75 

Computer  Quarterback., 24,75 

Questron 24.75 

50  Mission  Crusn 24.75 

Scarborough 

Songwriter    $24,75 

Phi  Beta  F S29.aS 

Mastertype  jjo  75 

Run  I  Money    S24  75 

Nel  Worlti  £49,96 


SUBLOGIC 

■light  Simulator  11.32.75 

JigTii  Mission  Pmball 22,75 


Graphics  Tablet 


Supersketct^ 
Kalala 


£49  95 
Saa  95 


PERSONAL  PERIPHERALS 

Super  Sketch  64 32  75 

Printer  Ulilily 18,75 

KOALA 

(C-641 
Koala  Pad 59  95 


HAYES 

Smartmodem  300  189 

Smartmooem  1200,  409 

Smartmodem  1200B     ,     ,379 

Micromodem  ME 249 

Micromodem  lOO,,, 289 

Chronograph 179 

Smart  Com  It 75 


TELE  LEARNING 

CM-250CC-61  39  95 

AP-250  (Apple) 109,96 

IB-250  (IBM) 109,95 


MODEMS 


MICROBITS 

MPP  lOOD  E  (AtanI  99  00 

MPP  1064  (C-64  69  95 


ANCHOR 

VolksmoOem 55.99 

Mark  VII 95,99 

(auto  ansMiall 

Mark  VII 259.00 

(1200  band] 


NOVATION 

JCai 89 

Smart  Cat  Plus 319 

Smart  Cat  103 169 

Smart  Cat  103/212 389 

Auto  Cat 209 

212  Auto  Cat 539 

Apple  Cat  II., 239 

212  Apple  Cat 439 

Apple  Cat  212 249 


CARDCO  MOD-I  iC-e-!!  CALL 
NESTRIDGE  (0-641  CALL 

MITEY  MO  (C-64)  ,  CALL 
1 660  AUTO  MODEM  (C  -64)  85 
COMPUSERVE  23  95 


CARDCO 

C/01  Wnle  rJow   29,95 

C/02  Wnle  Now  -  64  , , ,  39,95 
D/01  Mail  Now -64  ...  29.00 
0/04  Saell  Now  -  64  , .  - .   29.00 

D/02  Ulility  Desk  19.95 

CSO- 1  Disk  Drive  (new)  . ,  CALL 
IVIOD-1  Modern  (new)  ..  CALL 
0/03  Tax  Payer  (newj  ,  27,95 
D/07  Gale  Now/64  (newl...  27.95 

D/08  super  Printer  Ulilily 

D/08  Super  Printer 

Utility 27.95 

CK/1  Numeric  Key  Pad  . ,  34.95 
DC/1  Data  Casselle  ,  .  39  95 
CB/5  5  Slot 

Board  C-64      54,00 

CR/1  Lignt  Pen 29  75 

CE/iCasseltelnierlace  ,29.75 
CB/3  3  Slot 

Board  Vic-20  24.95 

CB/6  6  Slot 

Board  Vic-20 65.00 

HES 

HES  Games  84    22.95 

Omni  Writer/Spell  34.95 

HES  Mon64   23.95 

Microsoft  Multlptan 55  00 

Type  N  Write  1 9.95 

Turtle  Graphics  II  23.95 

Cell  Defense  22.95 

Painl  Brush 12.96 

Tri  Math  22.95 

Graphics  Basic   27.95 

HES  Kit      29.aS 

Mitlionaire  23.95 

64  Forth 24.95 

HES  Writer  64  24.95 

BATTERIES  INCLUDED 

Paper  Clip 59.95 

Spell  Pak 34.95 

Consultant 59.95 

Paper  Clip 

w/Spell  Pak 75.95 

Home  Pak ...34.95 

flus  Card 129.95 

80  Column  Board 109.95 

Mlcroprose 

Solo  Flight  £22  75 

NATO  S22  76 

SpiHire   $19-95 

F-15Strlke  $2275 

Air  Rescue  £22  75 


*    SUPER  SPECIAL!    * 


*  LOWEST  PRICES!    * 


MONITORS 


AMDEK 

300  Green  125 

300  Amber 139 

310  Amber  IBM 155 

Color  300  Audio 245 

Color  500  Composite 369 

Color  600 429 

Color  700 495 

Color  710 569 

PANASONIC 

DT  1300  RGi  corr.posile       329 


SAKATA 

SC-lOO  Color  219 

STSl  Stand 29 

SG  1000  Green 99 

SA  1000  Amber 109 

PRINCETON  GRAPHICS 

MAX- 12  Amber  189 

HX-t2  RGB  475 

Sfi-12  RGB 599 


NEC 

JB-1260  Green  .  .95 

JB-1201  Green... 135 

JC  1215  Color 229 

JC  1216  RGB 375 

JC1460  Color 265 

JB-1 205  Amber 139 

GORILLA 

12  ■  Green 78 

2"  Amber 84 


ZENITH 

ZVM  122A  Amber  84 

ZVM  123G  Green 75 

ZVM  124  Amber  IBM      ,    129 

ZVM  131  Color 275 

ZVM  133  RGB 389 

ZVM  135  Composite 449 

ZVM  136  Hi  Res  Color 589 


TAXAN 

210  Color  RBG 249 

115  Green 119 

1 16  Amber 125 

400  Color  RGB  ,   ,  275 

410  Color  RGB  339 

420  Color  IBM 429 

121  Green  ISM 139 

122  Amber  IBM  145 

X-TRON 

Comcolor  I  CiimfxiMrc  Green   199 


AMEPICA'S  MAILORDER  HEADQUARTERS 

LYCO     COMPUTER 

WORLD'S  LEADER  IN  SALES  &  SERVICE 


TO  ORDER 

CALL  TOLL  FREE 

800-233-8760 

In  PA  1  717-327-1824 

Lyco  Computer 

P.O.  Box  5088 

Jersey  Shore,  PA  1 7740 


PRINTER    INT 

CardcoG+  .... 

Cardco  B 

Turbo  Print  .... 

ERFACES 

.  $69.95 
.  $49.95 
.  $79.95 

.  $69.95 

))  $79.95 

.  $79.95 

.  $59.95 

$169.95 
$169.95 

S  29.95 
1101 

$299.95 
$224.95 
$299,95 
S329.95 
$219.55 

MONITORS 

1702  Color 

Gorilla  (green)  . . 
Gorilla  (amber)  . . 
Sai<ata  Color  — 

SOh  I  WARE 

Word  Processors 

Paper  Clip  (w/spe 
Word  Pro  3  +  (64 
Write  Now   .... 

5199.95 
S  79.95 
5  89.95 
$179.95 

1)  $79.95 
.$39.95 
.  $39.95 

.  $59.95 
.  $79.95 

.  $49.95 
,  $69.95 

.  $29.95 

.  $14.95 
.  $24.95 

MODEMS 

Westridge 
Automodem  . 

Modem  300  (166[ 

MPP  1064  C64  . 

Total  Telecommu- 
nication  — 

PRINTERS 

Commodore  801 

Commodore  803 
(tractor  feed 
option) 

Commodore  DPS 
(Daisy  Wheel) 

StarSG-10  .... 

Panasonic  1091 

Citizen  MSP-10  . 

G.E.  Printer  . . . 

Data  Bases 

Superbase  64  . . 
The  Consultant . 
Spread  Sheets 

Practicalc  11  . . . 
Calc  Result 

Utility  Soltware 

Print  Shop  

Floppiclene  Head 

Cleaner 

Mach  5 

COMPUTER 
WAREHOUSE 

(in  FL)  305-274-36fi0;  1-BOO-372-0214 
7222  S.W.  117th  Avenue,  Miami,  FL  33183 

Add  3%  (or  Shipping  and  handling  changes  Ad  pnces  reflect  3=?^  caa^i  discount. 
Credit  card  orders  should  add  S^o  Pncos  sub|ecl  to  change  wilhoul  notice, 


Professional      ^pflfp 
Handicapping    /f  \1\ 

Systems                       ^  ^ro^mr-  ^^>fie^ 

GLD.  Thofough&ied  "Gold"  Etlillon™ 

A    Fuir  tealmed  itcjougfibred  aryJysis  ips^wd  t»  the  pfolcsaenai  and  seiwus 
novice                                                                  $159.te  ccmpJiie 

ECLD.  Enhanced  -GoUI"  Editton™ 

■  Qaa  EOtefi  viitncompfeie  Master  BeiiorlM  sysjffn  nugiatrt  orn&ine  s?™ 
ti$jt  Th5  powertui  prognm  wH  iransfw  an  fwf5«  and  scores  lo  ifie  tKl  inaifsii 
«nn  a    5ingi2  keystriAe      (Matip  BencfTM  reiudrt)  S194.S5  ccmoieie 

GLTD.  Umiled  "Gold'-™ 

Eisttes  Prolwtiooil  Handlcappm  to  assflo  specific  values  lo  the  r»nc  ^\' 
utfe '  iney"  'eel  arc  imjjonanT  Cfcaie  prcqfsm  wp^fii  based  on  a  pjrircuijf 
Irack  aftfl  line  tine  iT  li>f  mnlmum  at,  percentage  Tht^  program  \%  iJtsiOncd 
tor    ea5e  of  ls?  "   the  user  needs  no  prBgrimmlng  vxpifitnci, 

;c{>nTain&  ime^raled  BettDfTU]  SZ99.dS  complete 

GD.  Gold  Dog  Analysis^W 

The  only  piotessionaJ  flog  hanflicappet  on  irte  iTiarhet.  irtludts 

1J  Speed                  4|  Post  Usl                     T\  Runmng  Siyle 

2]  Pd5[  Today          5)  Dislance                      B)  Wffght 

3]  Kennel                 6]  ConSrtton                     9)  AH  nw  inlernal  weighting 

10)  NEW  cfass  indicaiw 
It  you  are  near  i  ^cyrHjiund  irack.  yov  can'i  atfnd  mt  to  use  Ihis  pfog^am 
S149.95  comE^ete               (wiih  rtleg-alM  M^iei  BertOflW)  $199.95 
Limiled  Dog™  $299.95 

PPX.  Pforessor  Jones*  Foolball  Predietor,  Prtif.  PI](TM 

Compleie  Football  Aialps  v.ilti  DalB-Bne. 

1)  Overlays               3)    Super  Plays'            5)  Daia  Base  Sials 

2)  Poifl  Spreads      4)    OverfUndet'   tieis     fi)  Holds  ■100"  leams 

HIghesI  perccntace  of  winners  ISW 
S49,95  complete                           $99.95  wilh  Data  Base  Managemeni 

MHH.  Maslar  Harness  Handicapper™ 

Pf Dfessjoni  soliwate  desisned  la  piov'Oe  a  tnoiougr  analysis  cl  all  Irotrer  and 

pacer  races  m  North  America  ajuJ  Caftida 

$159.95  rampiEiE                 win  integrated  Master  BetWrTM  $199,95 

NBA.  Bssketlnlt™ 

TiasCs:aD3sensiaged3n^y5JSwirii5tt)videiheie«r  wftn   ALf  oeihiijsiua 
Irons  wt(ie  slanng  rfie^ar]  infomaiion  or  ihe  fli$k. 
S99.95  comtftle  ^jManuai                      $129.95  NBA/College  Version 

LOT,  LOHEBr  ANALYSIS™ 

Statisikcai  COniC>aM^rvi  progiam  tKSigned  n  Oeiecn  ^Dtie  paiiefns  tn  wimmg 

tottery  numtjer 

S79.95  campj-ic  w/Manuii                                   S99.95  wm  Loilo 

IBM^" 

APPLET" 

TRS-80^" 

CPM^" 

COMMODORE'" 

Prof.  Jones 

1940  W.  state  St, 
Boise,  ID  83702 

48  HR. FREE 
SHIPPING 

208-342-6939 

TERMS   FREE  SHIPPING  ALL 
SOFTWARE    4*)  » 00  hard- 
«ar(  (  S6  00  C  0  D  /  UPS  Blue 
S6  00  /  OK  al  Counlrv  S9.00  / 
ID  Resiaenis  4%  /  3  viteks  per- 
sonal checks  '  Casti  pnce  only. 
3dll2^ViiJ.MC;Pnccssu6- 
lecl  to  chingB 

BROCHURE  AVAILABLE 

WHITE  HOUSE       1-71 7-322-7700 

COMPUTER  Williarnsport,  PA  17701  HOURS:  Monday  thru  Friday  9:00  am  till  6:00  pm  Accepted  4% 


VISA  and  MC 


PRINTERS 

PANASONIC 

1090 187,00 

1091 257.00 

1092 389  00 

1093 585,00 

3151  455.00 

C.ITOH 

8510A 285-00 

8510BC1 329-00 

8510BC2 389-00 

8510BP1 339-00 

851 OSP 389,00 

851 OSR 429.00 

1550BCD 485.00 

1550P 445.00 

A10-2OP 465.00 

F10-40P/S 875.00 

F10-S5P/S 1059.00 

FtO  Tractor 169.00 

F10  Sheet  Feeder 349.00 

STAR  MICRONICS 

SG10 217.00 

SG1S 379.00 

SD10 345.00 

SD15 450,00 

SR10 485.00 

SR15 585.00 

Powertype 309.00 

EPSON 

RXeO 219.00 

LXeO 245.00 

FX80 369,00 

JX80 529.00 

RX100 359.00 

FX100 490.00 


LEGEND 

880 209.00 

1080 229.00 

1380 269.00 

1385 3QS.00 

C-64 

MPS  801 179.95 

802 208.95 

803 175.95 

MCS801 314.95 

DPS  1101 314.95 

ATARI 
XTM  201  Non-impact  Dot 

Matrix 99.95 

XTC  201  Color  Non-Impact 

Matrix 109.95 

XDM  1 21  DaisyWheel. . .  209.95 
XMM  801  Dot  Matrix 

Impact 169,95 

STC  504  Color/ 

Non-Impact 139,95 

STD121  DaisyWheel,.,  219.95 
SMM  801  Do)  Matrix/ 

Impac! 279,95 

CITIZEN 

MSP-10 325,00 

MSP-15 479,00 

MSP-20 489,00 

MSP-25 629.00 

OKIDATA 

182 219,95 

84 640,95 

ez 349.85 

93 580,95 

CARDCO 

LQ1  365,00 

LQ3 209.00 


INTERFACES 

MPP  1150 52,00 

850|Alari| 108,00 

UPrintw/16KBu(ler,,,,  79,95 

Cardco  G 55,95 

Cardco  B 37,95 


PRINTER  PAPER 

Lazor  500  shts 11,95 

Lazof  1000  shts 1  5.95 


COMPUTERS 

COMMODORE 

C-64 149,95 

C-128 275,95 

ATARI 

800  XL 99,95 

130  XE 145,95 

130  ST 379,95 

520  ST CALL 


SOFTWARE 

BRODERBUND  "ATARI" 
&  COMMODORE 

Print  Stiop 29,9 

Graphics  Library 18,95 

BS  Writer 41,95 

Stealth 21.95 


VIDEO  CASSETTE 

RECORDER 

$295.95 

Symphonic  VHS/Remots 

•  1 05  Channel  Cable  Ready 

•  14  Day/1  Program  Timer 

•  12  Pre-set  Channels 

•Auto  Rewind 


DISK  DRIVES 

ATARI 

Indus  GT 215.00 

1050 165,95 

"Happy"  1050 365,95 

MSD  Dual 459.00 

0-64 
Indus  GT 239.00 


MODEMS 

C-1600 44.95 

C-1650 54.95 

C-1660 54,95 

C- 1670  300/1200 

Band 185.95 

C-64  MPP-1064 59.95 

MPP  1000E  69.95 

Telelearning 39.95 

Hayes  300 189,95 

Hayes  1200 385,95 

Mitey  Mo 59,95 

Westridge 69,95 

CompuServe 

Staner  Kit 21,95 


DISKETTES 

SKC 

SS/SD 10,50 

SS/DD 13,50 

DS/DD 15.50 

MAXWELL 

MD-1 15.95 

MD-Z 21.95 

ELEPHANT 

SS/SD 13.50 

SS/DD 15.50 

DS/DD 19,50 


MONITORS 

ZENITH 

122A 82.95 

123G 75.95 

TEKNIKA 
MJ-10  Composite  i 

Separate  Video 1 99,00 

MJ-22  RGG  Composite  S 

Separate  Video 279,00 

AMDEK 

300G 119.00 

300A 129,00 

Color  300  235,00 

Color  500 345.00 

XTRON 

Comcolor  I  1 89.00 

COMMODORE 

C-1702 199,95 

C-1802 204,95 

C-1902  RGB  ,., 259.95 

C-1901  Monochrome, ,.  129,95 

ATARI 
XC  141  14"  Composite 

Color 199,95 

SM  124  12"  Monochrome/ 

High  Res 135.95 

SC  1  224  1  2" 

RGB  Color 335.95 


POLICY:  Nodeposil  QnCOD orders 
FREE  freigtil  on  all  prepaid  casti  ordera 
over  S300  in  the  continental  USA, 
APO  and  FPO  add  SS  per  tiundred. 
For  priority  mail  add  S8  per  hundred, 
PA  residents  add  6%  sales  lax. 
Effective  products  must  tiave  Prioi 
RA  numtwr,  Sctioots  net  IS, 


94     COMPUTfl     August  1985 


What  the  world  really  needs 
i^i  is  a  99  cent    i^^s 
Double  Sided,  Double  Density  Diskette 
with  a  LIFETIME  WARRANTY! 

And  DISK  WORLD!  ^i^t. 


Introducing  Super  Star  Diskettes: 

tlie  higli  quality  diskette  with 

the  lowest  price 

and  the  best  LIFETIME  WARRANTY! 


In  the  course  of  selling  more  than  a  million  diskette; 
every  montti.  we've  learned  somettiing:  tiigher  prices  don't 
necessarily  mean  higher  quality. 

In  tact,  we've  found  ttiat  a  good  diskette  manufacturer 
simply  manufactures  a  good  diskette. ..no  matter  wtiat 
thev  charge  for  it.  (By  way  of  example,  consider  that  none 
of  the  b  rands  that  we  carry  has  a  return  rate  of  greater  than 
l/l.OOOthof  1  percent!} 

In  other  words,  when  people  buy  a  more  expensive 
diskette,  they  aren't  necessarily  buying  higher  quality. 

The  extra  money  might  be  going  toward  tiashier  adver- 
tising, snazzier  packaging  or  simply  higher  profits. 

But  the  extra  money  in  a  higher  price  isn't  buying  better 
Quality. 

All  of  the  good  manufacturers  put  out  a  good  diskette. 

Period. 

How  to  cut  diskette  prices 
, .  .without  cutting  quality. 

Now  this  discovery  posed  a  dilemma:  how  to  cut  the 
price  of  diskettes  without  lowering  the  quality 

There  are  about  85  companies  claiming  to  be  "diskette" 
manufacturers. 

Trouble  is,  most  of  them  aren't  manufacturers. 

Rather  Ihey  are  fabricators  or  marketers,  taking  other 
company's  components,  possibly  doing  one  or  more  steps 
of  the  processing  themseives  and  pasting  their  labels  on 
the  finished  product. 

The  new  Eastman  Kodak  diskettes,  for  example,  are  one 
of  these.  So  are  IBM  SW  diskettes.  Same  for  DYSAN. 
Polaroid  and  many,  many  other  familiar  diskette  brand 
names.  Each  of  these  diskettes  is  manufactured  in  whole 
or  in  part  by  another  company! 

So.  we  decided  to  act  just  like  the  big  guys.  That's  how 
we  would  cut  diskette  prices... without  lowering  the 
quality. 

We  would  go  out  and  find  smaller  companies  to  manu- 
facture a  diskette  to  our  specifications. ..specifications 
which  are  higher  than  most. ..and  simply  create  our  own 
"name  brand"  diskette. 

Name  brand  diskettes  (hat  offered  high  quality  at  tow 
prices. 


DISKETTESTORAGE 


PEBFECTDATA  DIAL  "N  FILE 

TErnlic!  Holds  10  SVi' diskettes.  Just  flip 
the  lever  and  they  all  slide  up  tor  easy  access 
and  idenlilicalion.  Grey  with  smoked  plastic 
Irani. 

$2.75  Ea.  +  .35  Shpng. 

DISK  CADDIES 

The  origina!  flip-up  holder  (or  10  5 '4" 
diskettes  Bcioe  or  Grey  only. 

S1.65  ea.  *  .20  Shpng, 

DISKEHE  70  STORAGE 

Dust-free  storage  for  70  5'/«"  disketies 
Six  dividers  included.  An  excellent  value. 
.      $11.95  ea.  +  $3.00  Shpng. 


HOURS: 

Human:  flAM-GPM  Central  Time.  Monday  through  Friday 

Answering  Machine:  EPM-9AM,  All  Times 

MCI  MAIL  24  hours  a  day. 


Super  Star  diskettes  are  sold  in  multiples  ot  50  only.  Diskettes  are 
shipped  with  wfiite  Tyvec  sleeves,  reinforced  huts,  user  ID  labels 
and  write-protect  tabs. 


Boy,  did  we  get  lucky.  Our  Super  Star 

Diskettes  are  the  same  ones  you've  been 

using  for  years. .  .without  knowing  it. 

In  our  search  for  the  low  priced,  high  quality  diskette  of 
our  dreams,  we  found  something  even  more  Interesting. 

We  found  that  there  are  several  manufacturers  who 
don't  give  a  hoot  about  the  consumer  market  for  their 
diskettes.  They  don't  spend  millions  of  dollars  in  advertis- 
ing trying  to  get  you,  the  computer  user,  to  use  their 
diskettes. 

Instead,  they  concentrate  their  efforts  on  turning  out  the 
highest  quality  diskettes  Ihey  can. ..because  they  sell 
them  to  the  software  publishers,  computer  manufacturers 
and  other  folks  who  (in  turn)  put  their  name  on  them, , .  and 
sell  them  for  much  higher  prices  to  you! 

After  all.  when  a  software  publisher  or  computer  manu- 
facturer or  diskette  marketer  puts  their  name  on  a  diskette, 
they  want  It  to  work  time  after  time,  everytime.  (Especially 
software  publishers  who  have  the  nasty  habit  of  copy- 
proteciing  their  onginajsl) 


HOW  TO  ORDER: 


ORDERS  ONLY: 

1-800-621-6827 

(In  Illinois:  1-312-944-2766) 

INQUIRIES: 

1-312-944-2788 
FOR  FASTEST  SERVICE.  USE  NO-COST  MCI  MAIL: 
Our  address  is  DISKWORLD.  It's  a  FREE  MCI  MAIL 
letter.  No  charge  to  you.  (Situation  permitting,  we'll 
ship  these  orders  in  24  hours  or  less.) 

SHIPPWG;  5v<-  S  2V  DISKETTES— Add  S3,00  per  each 
too  or  lewer  diskettes.  OTHER  ITEMS:  Add  shipping  charges 
as  shown  ir>  addition  lo  other  shipping  charges  PAYMENT: 
VISA,  filASTERCARD  and  Prepaid  orders  accepted.  COD  OR- 
DERS: Add  additional  $3.00  special  handling  charge.  APD, 
FPO.  AK,  HI  i  PR  ORDEHS:  Include  shipping  charges  as 
shown  and  additional  5%  ol  total  order  amount  to  cover  PAL 
and  insurance.  We  ship  only  lo  United  States  addresses,  except 
for  those  listed  above.  TAXES:  Illinois  residents,  add  B% 
sales  tai. 

MINIMUM  ORDER:  S35.00  or  20  diskettes 


Superstar  Diskettes.  You  already  know 

liow  good  they  are.  Now  you  can  buy 

them...  cheap. 

Well,  Ihats  the  story. 

Super  Stat  diskettes  don't  roll  off  the  boat  from  Pago- 
Pago  or  emerge  from  a  basement  plant  just  east  of 
Nowhere. 

Super  Star  diskettes  have  been  around  (or  years.  ..and 
you've  used  them  for  years  as  copy-protected  software 
originals,  unprotected  originals.  Sometimes,  depending 
on  which  computer  you  own.  the  system  master  may  have 
been  on  a  Super  Star  diskette.  And  maybe  more  than  once, 
you've  bought  a  box  or  two  or  more  of  Super  Star  diskettes 
without  knowing  it.  They  just  had  some  "big"  company's 
name  on  them. 

Super  Star  Diskettes  arc  good.  So  good  that  a  lot  of 
major  software  publishers,  computer  manufacturers  and 
other  diskette  marketers  buy  them  in  the  tens  or  hundreds 
of  thousands. 

We  buy  them  in  the  millions. 

And  than  we  sell  them  to  you. 

Cheap 

When  every  little  bit  counts, 
it's  Super  Star  Diskettes. 

You've  used  them  a  hundred  times. ..under  different 
names. 

Now,  you  can  buy  the  real  McCoy,  the  same  diskette  that 
major  software  publishers,  computer  manufacturers  and 
diskette  marketers  buy.. .and  call  their  own. 

We  simply  charge  less. 


Super  Special! 


Order  50  Super  Star  Diskettes 
and  we'll  be  happy  to  sell  you  an 
Amaray  Media-Mate  50  for  only 
S8.75,  shipping  included. .a  lot 
less  than  the  suggested  retail  price 
of  $15.95. 

Regular  DISK  WORLD!  price:  S10.95  ea. 
S.  -I-  S2.00  Shpng. 


The  Super  Star 
LIFETIME  WARRANTY! 


Super  Star  Diskettes  are  unconditionally  warranted 
against  defects  in  original  material  and  workmanship 
so  long  as  owned  by  the  original  purchaser.  Returns 
are  simple:  just  send  the  defective  diskettes  with  proof 
of  purchase,  postage-paid  by  you  with  a  short  expla- 
nation of  the  problem,  and  we'll  send  you  the  replace- 
ments. (Incidentally,  coffee  stained  diskettes  and 
diskettes  with  staples'diiven  through  them  don't 
qualify  as  "defective".) 


WE  WILL  filEET  OR  BEAT  ANY  NATIONALLY 

ADVERTISED  PRICE 

ON  THE  SAME  PRODUCTS  AND  QUANTITIES 

SUBJECT  TO  THE  SAME  TERMS  AND  CONDITIONS, 


DISK  WORLD!,  Inc. 


Suite  4806 

30  East  Huron  Stf«et 

Chicago,  Illinois  60611 


mp"^ 


:WORlD 


23  PARK  ROW,  NEW  YORK,  N.Y.  I(W3S 

oBOf« rou FBFE  800-221-8180  'c;,";.?™;"^!,^ 

WHEN  BUYING  i^lAIL  OHDER— »7fO  VOU  BOY  FROM. 
IS  AS  IMPORTAriT  AS  WHAT  YOU  BUY 
REMEMBES.  WE  ARE 
RF.LIABLEI^ 

mnXEll  -        ^    " ■ — ■         rf.iruo 

COLD  STANDAKO        ^\      f  iPKEMASTB! 

nOPPY  DISKS  , 


EZZ 


coLoa  ptswrvfr 


$19995 


«■■•'-::"  *1 


*1499s 


,  .  ..  .  JcpMPuiet  114955 
;iTAR!i  SOOiL  hOM  COMPiJTEA      eqa  DC 

E-.'  PC  PftMhAL  C(^PUTFB  S'^gM  K 
TdUH  lis  CCHDF  VONITDq  ^un  nr 
CcwTlfTiattcrf  ISfll  DBK  OBIVE    ;4«  fie 


^>  «-toa  UTTEB  guAutr  ItflQK 

as=cillW  F   T  DOT  M^TIh*  .jgg  gg 

»:ji-i  1DI7  LnrtR  00«4JTy  iJTQiS; 

">r^^"^.^  ij99;9S 

:i.il3:a  193  M  CtXl**N  ij^  gj 


Jul    dJOO  H\  %PtfS  BAtSf 


•2AB.K 


cre'ntice  H.-iii  mQviE  UAMES  ' 
rriiiium  ail  TifUS  ri4  STOCjf 

Dn^WJ^''  H'D^'  tRAHSPADE)^ 
IpTingijO^rb  TMt  HEWWDOW 
Sb^rM^F^  PuD   Pfl  UR1ES 

J       i-i       ■    .  pan 

B#»9i*  B'm  oot  tent 

imwOmW  TiTUi  i*  STCXlC 
infKDm  HINT  tOOxI  IN  ITKl( 
Sir  T«ll  WHWTMV 


'■IS.%S 
'3S.95 
'34.95 
i29.95 
i!9.95 
^74.95 
S19.S5 
'17.95 
-'7.95 
iJ495 


EE3EE 


■'''--■"^'■1 


.msg  r:  ruKiNC  TEACmI'; 
is't"*  Summer  cames  n 

3«g'T*a:f  aboif  ritAKSP*.HNT 

Tru'FMm  aUA70K 
^;.vBCfcu3n  BUno  a  bOOk 
^jrurgm  JiNiMAtiOn  STAIOH 


2495 
29,95 
■23,95 
"S- '19.95 
M.95 
29.95 
«.95 

Kfil*^';  t^wsTOWt  vsiwrnO*     ^i^oe 


S3EEQ 


?3 


AunATUIWErrBE 
FC^  ■■■'■■"» 

<.F--i  Mowrvraro 

AC(l\:1C'-i  CMOTTBUlTtn 
ArtlVVCrt  SflACI  SHUTTLE 
winOKJO^  TBIIf  S  AOVENTURE 

f  "tt  Art^  7  crrss  or  cou) 


g7grai..-ll.l'M.'.....!L..."II.J 


'29.95 
'W95 
'19.95 
'19,95 
'J9.95 
'29.95 
'21.95 
'19.95 
'2^.95 
'29.95 


c:  CMJun 

-  0*     aisc 

^I    BASIC  INTEaPBETEr 

jre  S^Ci  i-".i5    PFl  FILE 

-  £*BCOM  IH  CtfSS 


'129.95 
-.     'K.9S 

'■"  '5(1,95 
'M,95 
'S4.95 
'J9.95 
109.95 
'89.95 
39.95 

ra.95 


L...ll.J,l|.J.Jl.,U...!TO  L..l!.l..'.,l.,-I'.. 


^ 


*27995 


J 


•*0«^ 


$4995 


V«on  «"J^w  ttpwktutOi  % 
Boa>n<i  Tuico  PusCu 

VifrCVTTT  RICH'  UHtUUIiTOB 
WtTj  M»f[r  UA«4ACtME><T 
ftUIIDi^  TJI»  dEJUl  I 

BrnlrnMniJwavnM^C'W^    ^S19S 
infiK^iT'  HrrpwHmm  ^M  95 

E»CT  i-^s  GJNtflKOsi  SJigS 


'37.95 
'59.95 
^1«J5 


W»aS'4~  HM  EHIIVE  CLIAhH     11701; 

cjnit2  7  *  c  pwmrp  ttJnwwi    ico  fie 

!r>n>^  an.']  r7D  DATA  DIFENCE'R     -i^  u 
ci^'^MC'i'  VltOO  UDDEH  5CQ  OC 

HJvK  WKKO  BI  wdocw  'KQ  4^ 


i-ii-^C 


:i  K'rtwug  «*  Mtfif  iMfli  iTT^ftwa-  M 


tVfSi  hAjOA  GUND    TH[f  irSTl*lC  rt  AAT  «  SMOlL  ^WIE  IS 

OUff  ■  1  D  MO  1300  iffttMTOIH  Pt£A5f  W4L  I'?  T.'M  fWl  0"  y.P"T 
TO  Irt  'C*  PB1CE5  OK  ITEin  "((IT  tr^TED  IN  Th  <  HC- 


ALL  PROIXICTS  CARRY  U.S.  WARRAPmES 

ALL  DEFECTIVE  PROEXJCrS  EXCHANGED  WIIHIM  30  DAYS 


5,SS!S!  .•rilS.'.'WB'SSS!.! 


•J6J  PACE  AUJ^lO    VJiDCO 

eo.'utrreJt  Etf  dTWwics 

•  •0  P*Cf  KFCaWD, 

CASirrTT  j«BO  CO  catali 
■  ixM  PAG*  v.rjjjro  ^oviE  c^riz^oc 


I    23  PARK  ROW,  D6PT.  CS,  NYC,  NY  10038 


I      riAME; 

I      ADDRESS:     __ 

I        CITY: 

V. -« 


Advertisers  Index 


Reader  Service  Number/ Advertiser  Poge 

102  Abacus  Software    61 

103  Abacus  Software    64,65 

104  American  PEOPLE/LINK 21 

Aprotek     2 

Batteries  Included    9 

105  CardcQ,  Inc IBC 

106  Chase  Manliattan    39 

107  Comark,  Inc 27 

Commodore IFC.l 

108  CompuServe     5 

ComputAbility    91 

109  Computer  Direct     45 

1 10  Computer  House  Specialties   ....   90 

1 1 1  Computer  Mail  Order 30.31 

1 12  Computer  Media  Marketing    ....   96 

Computer  Warehouse   94 

Disk  Worldl,  Inc 39 

Disk  Worldl,  Inc 95 

First  Class  Peripherals    43 

ICS  Computer  Training  61 

Jason-Ranheim  32 

113  Jensen  Tools,  Inc 44 


Reader  Service  Number/ Advertiser  Page 

1 14  J  &  R  Music  World 96 

Lyco  Computer    92,93 

North  Hills  Corp 96 

North  Hills  Corp 96 

1 15  Pacific  Exchanges    96 

1 16  Prof.  Jones    94 

117  Protecto    47 

1 1  a  Starpoint  Software    25 

119  Starpoint  Software    27 

120  Strategic  Simulations,  Inc 13 

121  Strategic  Simulations,  Inc 19 

1 22  subLOGIC  Corporation  11 

1 23  Taxon    BC 

124  Timeworks   32 

125  White  House  Computer   94 


Apple  Titles  from  COMPUTE!  Books  .  ,  7 
COMPUTE!  Books  August  Releases  .  23 
COMPUTEI's  Commodore  Collection, 

Volumes  1  ond  2    29 

COMPUTE!  Subscription    17 


3M  Diskettes 
Lifetime  Warranty 


TIRED  OF  WAITING 
FOR  SERVICE  AND  PRICE? 

9  out  of  10  SURVEYED 
DISK  BUYERS  PREFERRED 

NORTH  HILLS 

#1  IN  SERVICE  AND  PRICE 

1-800-328-3472 

Formatted  and  hard  sectored  disks 
in  stock-Dealer  inquiries  invited. 

COD,  VISA,  MASTERCARD 
All  orders  shipped  within  24  hrs. 


>i. 


A4  W 


NORTH  HILLS  CORP. 
INTERNATIONAL 

3564  Rolling  View  Dr. 
White  Bear  Lake,  MN.  55110 

l^N.  call  col'ect-612-770-0485 


^ 


"No-Stretch"  Viewing 
ANGLED  PRINTER  STAND 


Standard  &  Deluxe  Models  available 

80/1  32  column  available 

Deluxe  fits  over  Disk  Drive 

Priced  from  S21  ,95 

COMPUTER  MEDIA  MARKETING 


Dept.  [C-B]  P.O,  BOX  61 4 

Katy.  TX   77492 

713/392-2385 

[collect  ok] 

D^fller  Inquiries  Wflicomo 


MEMOREX 

FLEXIBLE  DISCS 


WE  WILL  NOT  BE  UNDER- 
SOLDn  Call  Free  (800)2354137 

for  prices  and  informatioa  Dealer 
inquiries  invited  and  C.O.D.'s 
accepted 


PACinc 

EXCHANGES 

100  Foothill  Blvd 
San  Luis  Obispo.  CA 
93401,  In  Cat  call 
(8001592-5935  or 
8051543-1037 


y 


maxeil  disks 

LIFETIME  WARRANTY 


TIRED  OF  WAITING 
FOR  SERVICE  AND  PRICE? 

9  out  of  10  SURVEYED 
DISK  BUYERS  PREFERRED 

NORTH  HILLS 

#1  IN  SERVICE  AND  PRICE 

1-800-328-3472 

Formatted  and  hard  sectored  disks 
in  stock-Dealer  inquiries  invited. 

COD,  VISA,  MASTERCARD 
All  orders  shipped  within  24  hrs. 


Ai4 


M 


NORTH  HILLS  CORP. 
INTERNATIONAL 

3564  Rolling  View  Dr. 

White  Bear  Lake,  MN.  551 10 

MN.  call  collect-612-770-0485 


Shift  your  computer  Info  overdrive 

^COMPUTE! 

Add  COMPUTEi  to  your  personal-computer  operations,  and  discover  how 
much  more  you  can^do-and  enjoy  !-with  up  to  30  new  games  and 
programs  each  month! 


n  Enjoy  1  year  (12  issues)  for  only 
$24.  Save  32%  ofl  the  cover  price! 


D  Save  even  more!  Enjoy  2  years 
(24  issues)  for  only  S45. 


Name 


(please  prinl) 


Address-^ 


.State. 


.Zip. 


358C01 


□  Payment  enclosed        D  Bill  me  later 

Indicate  make  and  model  of  computer  you  use; 
APPLE  D  01      ATARI  a  02        64Do3     VIC  20  0  04 
IBM  n  05    TEX  INS  a  06    OTHER s^ 


PLEA5EAUOW...WEL^Sr0.piUVE«VOFVOURR[>ST.SSU.ro.|^^ 


SAVE 

32%  OFF 

The  Cover 

Price! 


BUSINESS  REPLY  MAIL 

FIRST  CLASS      PERMIT  NO,  2312      GREENSBORO,  NC 


POSTAGE  WILl  BE  PAID  BY  ADDRESSEE 


COMPUTE! 

P.O.  Box  914 
Farmingdde,  NY  11737 


NO  POSTAGE 

NECESSARY 

IF  MAILED 

IN  THE 

UNITED  STATES 


COMPUTEI's 

FREE  Reader  Information  Service 

Use  these  cards  to  request  FREE  information  about  the  products  ad- 
vertised in  this  issue.  Clearly  print  or  type  your  full  name  and  address. 
Only  one  card  should  be  used  per  person,  Circle  the  numbers  that 
correspond  to  the  l<ey  number  appearing  in  the  advertisers  index. 

Send  in  the  card  and  the  advertisers  W\\\  receive  your  inquiry.  Al- 
though every  effort  is  made  to  insure  that  only  advertisers  wishing  to 
provide  product  information  have  reader  service  numbers,  compute! 
cannot  be  responsible  if  advertisers  do  not  provide  literature  to 
readers. 

Please  use  these  cards  only  for  subscribing  or  for  requesting  product 
information.  Editorial  and  customer  service  inquiries  should  be  ad- 
dressed to:  COMPUTE!,  P.O.  Box  6406,  Greensboro,  NC  27403.  Check 
the  expiration  date  on  the  card  to  insure  proper  handling. 

Use  these  cards  and  this  address  only  for  computei's  Reader  Infor- 
mation Service.  Do  not  send  with  payment  In  any  form. 


COMPUTE! 

101 

102 

103 

104 

105 

106 

107 

108 

109 

110 

111 

112 

113 

114 

115 

116 

117 

lie 

119 

120 

121 

122 

123 

124 

125 

126 

127 

126 

129 

130 

131 

132 

133 

134 

135 

136 

137 

138 

139 

140 

141 

142 

143 

144 

145 

146 

147 

148 

149 

150 

151 

152 

153 

IM 

155 

156 

157 

158 

159 

160 

161 

162 

163 

164 

165 

166 

167 

168 

169 

170 

171 

172 

173 

174 

175 

176 

177 

178 

179 

180 

181 

182 

183 

184 

185 

186 

187 

188 

J89 

190 

191 

192 

193 

194 

195 

196 

197 

198 

199 

200 

201 

202 

203 

204 

205 

206 

207 

208 

209 

210 

211 

212 

213 

214 

215 

216 

217 

218 

219 

220 

221 

222 

223 

224 

225 

226 

227 

228 

229 

230 

231 

232 

233 

234 

235 

236 

237 

236 

239 

240 

241 

242 

243 

244 

245 

246 

247 

246 

249 

250 

251 

252 

253 

Circle  101  for  a  one  year  new  U.S. 

subscription  to  compute!:  you  will  be  billed  tor  S24. 

Planu 

a  la+  1 

c  1/nn 

\A/    Pir^ 

\mt  1 

-« 

,^^ 

_^_„ 

m,,„„i 

own: 
D 

n 

272 

D 

□ 

D 

278 

D 

280 


Apple . 
Atari  _ 


plan  to  buy: 


D 

271 


Commodore 

IBM 


TI-W/4A 
other  _ 


(specify  mocJeO 


D 

273 

D 

275 

□ 
277 

D 

27<) 

D 

281 


Please  print  or  type  name  and  address. 
Limit  one  card  per  person. 

Name 

Address 

City 

State/Province 

Zip 

Country 

Please  mcluda  zip  coOe.  Expiration  9/30/S5 


C0685 


SUBSCRIBE  TO  COMPUTE! 


My  Computer  Is: 
01  n  Apple     02  D  Atari 
04  D  VIC-20     05  D  IBM 
99  n  other . 


03  n  Commodore  64 
06  n  TI-99/4A 
D  Don't  yet  have  one. 


For  Fastest  Service, 

Call  Our  ToJI-Free 

US  Order  Line 

800-334-0868 

In  HC  call  919-275-«M)« 


D  $24.00  One  Year  US  Subscription 
D  $45.00  Two  Year  US  Subscription 


(Readers  outside  of  the  US,  please 
see  our  foreign  readers  subscription 
cord  or  inquire  for  rotes). 


Name 

Address 

City 

State 

Zip 

n  Payment  Enclosed 
Charge  my:  D  VISA 
Account  No. 

D  Bill  me 
D  MasterCard 

D  American  Express 
Expires            / 

Your  sutJScnption  will  begin  with  the  next  avalJatile  issue.  Please  allow  4^  weeks  for  delivery  of  (irsf  issue.  Subscription  prices 
subject  to  change  at  any  time. 

The  COMPUTEI  subscriber  list  is  made  ovaikiDfe  to  careMly  screened  organizdions  wiffi  o  ptoduct  or  service  which  may  be  of 
intefest  to  our  readers.  If  you  prefer  not  to  receive  such  mallngs,  please  chock  tWs  box  n.  358C04 


Place 

Stamp 

Here 


COMPUTE!  Reader  Service 

P.O.  Box  2141 
Radnor.  PA  19089 


NO  POSTAGE 

NECESSARY 

IF  MAILED 

IN  THE 

UNITED  STATES 


BUSINESS  REPLY  MAIL 

FIRST  CLASS  PERMIT  NO.  2312     GREENSBORO,  NC 


POSTAGE  WILL  BE  PAID  BY  ADDRESSEE 

COMPUTE! 

P.O.  Box  914 
Farmingdale,  NY  1 1 737 


1 


Technical 


Breakthrough 


IMumber  S7 


Pl^ 


rfor 


no  other  print;er  interface  can 


Only  CARDCO  would  dare  improve  on  its  own 
best  seller  (the  +G  has  far  out-sold  any  other 
printer  interface,  and  has  set  the  industry 
standard  by  which  competitors  are  judged). 
The  G-Wiz  Is  even  better  —  and  costs 
30%  less."  Our  27th  major  innovation  in 
Commodore  accessories  has  all  the  +G's 
features,  and  more... 
Built-in  Buffer  for  IVfbre  Speed 
The  G-Wiz  buffer  dumps  high-resolution 
screens  up  to  18  times  faster  than  competitive 
interfaces  without  buffers.  No  more  waiting!  A 
complex  50-minute  printout  now  takes  just  2.5 
minutes  with  the  G-Wlz. 


Micronics,  Prowriter,  Smith  Corona,  C-ITOH, 
Gorilla  Banana,  and  many  other  dot  matrix 
printers.  Now  you  can  perfectly  align  high 
resolution  graphics  characters  within  text 
blocks,  or  in  columns. 

CARDCO  excellence  triumphs  again!  The 
G-Wiz  is  the  "best  bang  for  the  buck"  on  the 
printer  interface  market  today  —  and  it's 
backed  by  CARDGO'S  exclusive  lifetime 
warranty!  '    '"'•■  ■  another  distant  target  for  the 
competitii  ~*>iipp-- 


CARDCC 


KS  67202 


Wfe  Make  Your  Apple  Shine 

At  TAXAN  we  keep  it  simple.  Our  Apple  line  of  Monitors  "— ' '~  ""■  "■  '"'"  ' ' 

combines  many  of  the  great  features  of  our  IBM  line. 
Super  High-Res  and  High-Res  capabilities  allow  for  the 


Being  #1  is  an  education. 

Picking  the  right  Monitor 
for  your  Apple  takes  an 
educated  guess,  tool 
finest  in  business  graphics.  Video  games  look  better,  tool 
And  your  children  will  love  you  for  choosing  TAXAN 
instead  of  Brand  X. 


MOPBL  420  (2  inch  Super  High-Res  RGB  Color  Monitor. 
Fully  compatible  witfi  Apple.  IBM  and  most  other  personal 
computefS-  640x262  line  resofurion.  Unlimited  colors  available 
thraugfi  analog  video  circuit.  Btactt  face,  non-glare  tube. 


MODEL  410  12  inch  High-(!es  RGB  Color  Monitor  Fully 
compatible  with  Apple,  IBM  and  most  other  personal  computers- 
5)0)t262  line  /esolution.  Unlimited  colors  available  through  analog 
vrdeo  circuit. 


MODKL  220  I4'  composite  Color  Monitor  t^th  Audio 

Standard  NTSC  composite  video  signal  input 

Chrominance  and  luminance  inputs  available  for  Commodore, 
Atari,  and  other  corrputerj 

Exuemeh/  tow  geometric  distortion 

Switchable  to  green  or  amtJCf  display.  Built-in  2  watt  audio 

Optional:  Ti!l;/Svvivel  Base  available  (Model  t10-12| 

4T0-08  RGB  interface  card  for  the 
Apple  II,  Ih,  He  and  Franklin  Ace  1 000 
and  1 200  Rev.  A  only. 
410-17  RGB  Module  f^A,"^' lie. 
410-80B  80  C':-!','='.  "^       q 
intpA'—cjrJ-^  ppte  lie. 

1  addi- 
"  'olor 

.Irtr 


MODEL  116  12  inch  High-Res  Amber  Monitor  Long 
Persistance  Phosphor  vM^  non-glare  screen.  Fully  compatible 
with  Apple.  IBM  and  most  other  personal  computers.  1000  line 
resolution.  More  tfian  20  MHz  bandwidth.  2000  charaaer  display. 
Optional  filt/Swivel  Base  available  Model  110-12. 
Green  Phosphor  available  [lutodel  II5|, 


MODEL  500  PRINTER  BUFFER 

Centronics  compatible  parallel  interfece 
with  64K  memoiy  expandable  to  2S6K. 
Four  ftjnnion  modes  include:  Manual. 
Ctouble.  Free  and  Command.  Compatible 
^vith  most  printers. 
OPTIONS— 

Model  599-01  e>4K  Extra  Memoiy 
Add-on